使用SeekBar调节屏幕亮度,代码如下:
/**
* 设置屏幕亮度
*/
private void setBrighrnessSeekBar() {
brightnessSeekBar = (SeekBar) findViewById(R.id.BrightnessSeekBar);
brightnessSeekBar.setMax(255);
brightnessSeekBar.setProgress((int) (android.provider.Settings.System.getInt(getContentResolver(), android.provider.Settings.System.SCREEN_BRIGHTNESS, 255)));
brightnessSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
Integer itg = brightnessSeekBar.getProgress();
// System.out.println("当前亮度------------------>"+itg+"____"+(itg*100/255));
//设置当前activity的屏幕亮度
WindowManager.LayoutParams lp = MySettings.this.getWindow().getAttributes();
//0到1,调整亮度暗到全亮
lp.screenBrightness = Float.valueOf(itg / 255f);
MySettings.this.getWindow().setAttributes(lp);
//保存为系统亮度
android.provider.Settings.System.putInt(getContentResolver(), android.provider.Settings.System.SCREEN_BRIGHTNESS, itg);
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
}