欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android編程獲取并設(shè)置Activity亮度的方法

 更新時(shí)間:2015年12月30日 09:28:52   作者:傅榮康  
這篇文章主要介紹了Android編程獲取并設(shè)置Activity亮度的方法,涉及Android針對(duì)屏幕亮度的相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Android編程獲取并設(shè)置Activity亮度的方法。分享給大家供大家參考,具體如下:

此API只適合2.1以上版本:

/**
 * 判斷是否開(kāi)啟了自動(dòng)亮度調(diào)節(jié)
 *
 * @param aContext
 * @return
 */
public static boolean isAutoBrightness(ContentResolver aContentResolver) {
  boolean automicBrightness = false;
  try {
    automicBrightness = Settings.System.getInt(aContentResolver,
        Settings.System.SCREEN_BRIGHTNESS_MODE) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;
  } catch (SettingNotFoundException e) {
    e.printStackTrace();
  }
  return automicBrightness;
}
/**
 * 獲取屏幕的亮度
 *
 * @param activity
 * @return
 */
public static int getScreenBrightness(Activity activity) {
  int nowBrightnessValue = 0;
  ContentResolver resolver = activity.getContentResolver();
  try {
    nowBrightnessValue = android.provider.Settings.System.getInt(
        resolver, Settings.System.SCREEN_BRIGHTNESS);
  } catch (Exception e) {
    e.printStackTrace();
  }
  return nowBrightnessValue;
}
/**
 * 設(shè)置亮度
 *
 * @param activity
 * @param brightness
 */
public static void setBrightness(Activity activity, int brightness) {
  // Settings.System.putInt(activity.getContentResolver(),
  // Settings.System.SCREEN_BRIGHTNESS_MODE,
  // Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
  WindowManager.LayoutParams lp = activity.getWindow().getAttributes();
  lp.screenBrightness = Float.valueOf(brightness) * (1f / 255f);
  activity.getWindow().setAttributes(lp);
}
/**
 * 停止自動(dòng)亮度調(diào)節(jié)
 *
 * @param activity
 */
public static void stopAutoBrightness(Activity activity) {
  Settings.System.putInt(activity.getContentResolver(),
      Settings.System.SCREEN_BRIGHTNESS,
      Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
}
/**
 * 開(kāi)啟亮度自動(dòng)調(diào)節(jié)
 *
 * @param activity
 */
public static void startAutoBrightness(Activity activity) {
  Settings.System.putInt(activity.getContentResolver(),
      Settings.System.SCREEN_BRIGHTNESS_MODE,
      Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
}
/**
 * 保存亮度設(shè)置狀態(tài)
 *
 * @param resolver
 * @param brightness
 */
public static void saveBrightness(ContentResolver resolver, int brightness) {
  Uri uri = android.provider.Settings.System
      .getUriFor("screen_brightness");
  android.provider.Settings.System.putInt(resolver, "screen_brightness",
      brightness);
  resolver.notifyChange(uri, null);
}

使用SeekBar進(jìn)行亮度控制:

sSeekBar = (SeekBar) findViewById(R.id.seek_bar);
sSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
  @Override
  public void onStopTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub
  }
  @Override
  public void onStartTrackingTouch(SeekBar seekBar) {
  }
  @Override
  public void onProgressChanged(SeekBar seekBar, int progress,
      boolean fromUser) {
    if (progress < 10) {
    } else {
      setBrightness(Test2Activity.this, progress);
    }
  }
});
//獲取當(dāng)前亮度的位置
int a =getScreenBrightness(this);
sSeekBar.setProgress(a);

<SeekBar
  android:id="@+id/seek_bar"
  android:layout_width="200dp"
  android:layout_height="wrap_content"
  android:layout_alignParentBottom="true"
  android:max="255"
  android:maxHeight="8dp"
  android:minHeight="8dp"
  android:paddingBottom="5dp"
  android:paddingLeft="13dp"
  android:paddingRight="13dp"
  android:progress="0"
   />

希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論