调节屏幕亮度时,先设置当前activity亮度,再并保存为系统亮度即可。
1 onCreate()里检查系统亮度并设置seekbar:
private voID screenBrightness_check() { //先关闭系统的亮度自动调节 try { if(androID.provIDer.Settings.System.getInt(getContentResolver(),androID.provIDer.Settings.System.SCREEN_BRIGHTnesS_MODE) == androID.provIDer.Settings.System.SCREEN_BRIGHTnesS_MODE_autoMATIC) { androID.provIDer.Settings.System.putInt(getContentResolver(),androID.provIDer.Settings.System.SCREEN_BRIGHTnesS_MODE,androID.provIDer.Settings.System.SCREEN_BRIGHTnesS_MODE_MANUAL); } } catch (SettingNotFoundException e) { // Todo auto-generated catch block e.printstacktrace(); } //获取当前亮度,获取失败则返回255 intScreenBrightness=(int)(androID.provIDer.Settings.System.getInt(getContentResolver(),androID.provIDer.Settings.System.SCREEN_BRIGHTnesS,255)); //文本、进度条显示 mSeekbar_light.setProgress(intScreenBrightness); mTextVIEw_light.setText(""+intScreenBrightness*100/255); }
2 拖动seekbar时设置当前activity亮度,并保存为系统亮度:
//屏幕亮度 private voID setScreenBritness(int brightness) { //不让屏幕全暗 if(brightness<=1) { brightness=1; } //设置当前activity的屏幕亮度 WindowManager.LayoutParams lp = this.getwindow().getAttributes(); //0到1,调整亮度暗到全亮 lp.screenBrightness = float.valueOf(brightness/255f); this.getwindow().setAttributes(lp); //保存为系统亮度方法1 androID.provIDer.Settings.System.putInt(getContentResolver(),brightness); //保存为系统亮度方法2// Uri uri = androID.provIDer.Settings.System.getUriFor("screen_brightness"); // androID.provIDer.Settings.System.putInt(getContentResolver(),"screen_brightness",brightness); // // resolver.registerContentObserver(uri,true,myContentObserver); // getContentResolver().notifyChange(uri,null); //更改亮度文本显示 mTextVIEw_light.setText(""+brightness*100/255); }您可能感兴趣的文章:android 屏幕亮度调节方法详解android 如何设置开机后屏幕亮度默认值为自动调节Android编程调节屏幕亮度(背景灯)及保持背景灯常亮的方法Android中 视频屏幕左半部分上下滑动改变亮度右半部分上下滑动改变声音Android视频播放器屏幕左侧边随手指上下滑动亮度调节功能的原理实现Android编程设置屏幕亮度的方法Android开发实现调节屏幕亮度功能 总结
以上是内存溢出为你收集整理的Android调节屏幕亮度实现代码全部内容,希望文章能够帮你解决Android调节屏幕亮度实现代码所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)