Android Dev/Snippets & Samples
화면 밝기 변경 (Change screen brightness)
Guter Mann
2019. 2. 10. 15:23
반응형
[Snippet]
화면 밝기 변경
밝기 값
0~255(최소~최대), -1(시스템 설정값)
private void changeScreenBrightness(int value) {
Window window = getWindow();
WindowManager.LayoutParams layoutParams = window.getAttributes();
layoutParams.screenBrightness = value * 1.0f / 255;
window.setAttributes(layoutParams);
}
[Sample]
버튼 3개(최소, 최대, 시스템 설정)로 해당 밝기 선택, 종료시는 시스템 설정 밝기로 복귀
public class MainActivity extends AppCompatActivity {
private static final int BRIGHTNESS_MIN = 0;
private static final int BRIGHTNESS_MAX = 255;
private static final int BRIGHTNESS_SYSTEM = -1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.btnMinBrightness).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
changeScreenBrightness(BRIGHTNESS_MIN);
}
});
findViewById(R.id.btnMaxBrightness).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
changeScreenBrightness(BRIGHTNESS_MAX);
}
});
findViewById(R.id.btnSystemBrightness).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
changeScreenBrightness(BRIGHTNESS_SYSTEM);
}
});
}
@Override
protected void onStop() {
super.onStop();
changeScreenBrightness(BRIGHTNESS_SYSTEM);
}
private void changeScreenBrightness(int value) {
Window window = getWindow();
WindowManager.LayoutParams layoutParams = window.getAttributes();
layoutParams.screenBrightness = value * 1.0f / 255;
window.setAttributes(layoutParams);
}
ScreenBrightness.zip