Adnroid 화면 밝기 조절 - 지정된 값으로 설정하고 원래 값으로 복원
5071 단어 android화면 밝기 조절화면 밝기 조절 모드
1. 현재 화면 밝기 조절 모드 값과 화면 밝기 값을 저장한다.
/*
*
* SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1
* SCREEN_BRIGHTNESS_MODE_MANUAL=0
*/
screenMode = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE);
Log.i(TAG, "screenMode = " + screenMode);
// 0--255
screenBrightness = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);
Log.i(TAG, "screenBrightness = " + screenBrightness);
2. 현재 화면 밝기 조절 모드 값과 화면 밝기 값을 변경합니다.
// ,
if(screenMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC){
setScreenMode(Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
}
// 255
setScreenBrightness(255.0F);
3. 떠날 때 현재 화면 밝기 조절 모드 값과 화면 밝기 값을 복원합니다.
//
setScreenBrightness(screenBrightness);
//
setScreenMode(screenMode);
4. 필요한 권한:
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
5. 전체 코드:
package com.easipass.setting.screen.luminance;
import android.app.Activity;
import android.os.Bundle;
import android.provider.Settings;
import android.provider.Settings.SettingNotFoundException;
import android.util.Log;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
/**
* :
*
* @author android_ls
*/
public class SettingScreenLuminanceActivity extends Activity {
private static final String TAG = "ScreenLuminance";
/**
*
*/
private int screenMode;
/**
* 0--255
*/
private int screenBrightness;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//
super.findViewById(R.id.button1).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
/*
*
* SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1
* SCREEN_BRIGHTNESS_MODE_MANUAL=0
*/
screenMode = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE);
Log.i(TAG, "screenMode = " + screenMode);
// 0--255
screenBrightness = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);
Log.i(TAG, "screenBrightness = " + screenBrightness);
// ,
if (screenMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) {
setScreenMode(Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
}
// 255
setScreenBrightness(255.0F);
} catch (SettingNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
//
super.findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//
setScreenBrightness(screenBrightness);
//
setScreenMode(screenMode);
}
});
}
/**
*
* SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1
* SCREEN_BRIGHTNESS_MODE_MANUAL=0
*/
private void setScreenMode(int value) {
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, value);
}
/**
* 0--255,
*/
private void setScreenBrightness(float value) {
Window mWindow = getWindow();
WindowManager.LayoutParams mParams = mWindow.getAttributes();
float f = value / 255.0F;
mParams.screenBrightness = f;
mWindow.setAttributes(mParams);
//
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, (int) value);
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.