国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android編程設置屏幕亮度的方法

2019-10-22 18:31:20
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程設置屏幕亮度的方法。分享給大家供大家參考,具體如下:

使用場景

最近在研究AndroidL Settings的代碼,寫了一個簡單的控件來操控屏幕亮度。

其實,調節屏幕亮度的場景應用很廣,例如很多視頻應用都響應touch事件來進行亮度調節。

屏幕亮度調節模式

首先,需要明確屏幕亮度有兩種調節模式:

Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC:值為1,自動調節亮度。
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL:值為0,手動模式。

如果需要實現亮度調節,首先需要設置屏幕亮度調節模式為手動模式。

設置方法如下:

public void setScrennManualMode() {  ContentResolver contentResolver = getActivity().getContentResolver();  try {    int mode = Settings.System.getInt(contentResolver,        Settings.System.SCREEN_BRIGHTNESS_MODE);    if (mode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) {      Settings.System.putInt(contentResolver, Settings.System.SCREEN_BRIGHTNESS_MODE,          Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);    }  } catch (Settings.SettingNotFoundException e) {    e.printStackTrace();  }}

獲取屏幕亮度值

這里需要了解:

1. 屏幕最大亮度為255。
2. 屏幕最低亮度為0。
3. 屏幕亮度值范圍必須位于:0~255。

設置屏幕亮度的方法:

private int getScreenBrightness() {  ContentResolver contentResolver = getActivity().getContentResolver();  int defVal = 125;  return Settings.System.getInt(contentResolver,      Settings.System.SCREEN_BRIGHTNESS, defVal);}

設置系統屏幕亮度值

在設置系統屏幕亮度前,需要保證AndroidManifest.xml中聲明如下權限:

復制代碼 代碼如下:
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>

 

當屏幕亮度模式為0即手動調節時,可以通過如下代碼設置屏幕亮度:

private void saveScreenBrightness() {  setScrennManualMode();  ContentResolver contentResolver = getActivity().getContentResolver();  int value = 255; // 設置亮度值為255  Settings.System.putInt(mContentResolver,      Settings.System.SCREEN_BRIGHTNESS, value);}

設置當前窗口亮度

很多視頻應用,在touch事件處理屏幕亮度時,并不是修改的系統亮度值,而是修改當前應用所在窗口的亮度。具體做法就是修改LayoutParams中的screenBrightness屬性。參考代碼如下:

private void setWindowBrightness(int brightness) {  Window window = getWindow();  WindowManager.LayoutParams lp = window.getAttributes();  lp.screenBrightness = brightness / 255.0f;  window.setAttributes(lp);}

希望本文所述對大家Android程序設計有所幫助。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 凤台县| 呼图壁县| 江川县| 新和县| 韶山市| 宝鸡市| 汕尾市| 唐海县| 武义县| 绵竹市| 县级市| 左贡县| 孟连| 克拉玛依市| 丘北县| 通渭县| 岳池县| 庐江县| 崇州市| 安康市| 东乡族自治县| 威宁| 三门县| 犍为县| 东台市| 盈江县| 错那县| 南投县| 朝阳县| 绍兴市| 京山县| 玉林市| 宜宾市| 抚松县| 英吉沙县| 绵阳市| 从江县| 晋中市| 丽水市| 朝阳县| 乌海市|