کم کردن نور چراغ صفحه ی گوشی در اندروید
سه شنبه 13 تیر 1396در این مقاله قصد داریم یک نمونه برای شما قرار دهیم که شما با استفاده از نوار ابزار اندروید می توانید نور صفحه ی گوشی خودتان را زیاد یا کم کنید به اینگونه که با استفاده از seekbar نور صفحه در گوشی تان کم می شود.
در این نمونه با استفاده از تابع setOnSeekBarChangeListener() می توانید نور صفحه تان را کم نمایید همان طور که می دانید برای کم کردن نور صفحه ی گوشی در قسمت نوار ابزار وجود دارد ولی با استفاده از این تابع می توانید این دسترسی را به اپلیکیشن های خود بدهید که از داخل اپلیکیشن نور صفحه کم شود.
ابتدا باید مجوز دسترسی زیر را در androidmanifest قرار دهید
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
حالا باید کلاس مورد نظر را بنویسید:
import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.widget.SeekBar; import android.widget.TextView; import android.widget.Toast; import android.provider.Settings; public class MainActivity extends Activity { SeekBar seekbar; TextView progress; Context context; int Brightness; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); seekbar = (SeekBar)findViewById(R.id.seekBar1); progress = (TextView)findViewById(R.id.textView1); context = getApplicationContext(); //Getting Current screen brightness. Brightness = Settings.System.getInt(context.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS,0 ); //Setting up current screen brightness to seekbar; seekbar.setProgress(Brightness); //Setting up current screen brightness to TextView; progress.setText("Screen Brightness : " + Brightness); seekbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int i, boolean b) { progress.setText("Screen Brightness : " + i); //Changing Brightness on seekbar movement. Settings.System.putInt(context.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS,i ); } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onStopTrackingTouch(SeekBar seekBar) { } }); } }
در قسمت layout قطعه کد زیر را قرار دهید:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.setscreenbrightness_android_examples.com.MainActivity" android:id="@+id/relativelayout" > <SeekBar android:id="@+id/seekBar1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:max="255" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/seekBar1" android:layout_centerHorizontal="true" android:layout_marginBottom="16dp" android:text="Progress" android:textAppearance="?android:attr/textAppearanceLarge" /> </RelativeLayout>
خروجی به وصرت زیر است
- Android
- 1k بازدید
- 2 تشکر