Skip to content
This repository has been archived by the owner on Feb 1, 2024. It is now read-only.

Commit

Permalink
Merge pull request #1038 from huanxuaner/master
Browse files Browse the repository at this point in the history
#5 #25 第5次实验
  • Loading branch information
zengsn authored Nov 18, 2020
2 parents 72a7e35 + fb78eae commit e2f2e99
Showing 1 changed file with 32 additions and 8 deletions.
40 changes: 32 additions & 8 deletions students/net1814080903109/LightenActivity.java
Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
package edu.hzuapps.androidlabs.net1814080903109;

import android.content.ContentResolver;
import android.net.Uri;
import android.os.Bundle;
import android.provider.Settings;
import android.view.Window;
import android.view.WindowManager;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;



public class LightenActivity extends AppCompatActivity {


private SeekBar seekbar=null;
private TextView light=null;
@Override
Expand All @@ -25,25 +33,41 @@ public class SeekBarChangeListenerImp implements OnSeekBarChangeListener{

public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub

float cur=seekBar.getProgress();
LightenActivity.this.setScreenBrightness(cur/100);
LightenActivity.this.setScreenBrightness(cur);
LightenActivity.this.light.setText("当前屏幕亮度:"+cur/100);
}

public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub

}

public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub

}
}
//设置屏幕亮度的函数

//改变当前页面亮度
private void setScreenBrightness(float num){
WindowManager.LayoutParams layoutParams=super.getWindow().getAttributes();
layoutParams.screenBrightness=num;//设置屏幕的亮度
Window localWindow = getWindow();
WindowManager.LayoutParams localLayoutParams = localWindow.getAttributes();
float f = num / 255.0F;
localLayoutParams.screenBrightness = f;
localWindow.setAttributes(localLayoutParams);
saveBrightness(getContentResolver(), (int) num);
}

super.getWindow().setAttributes(layoutParams);
//将当前页面亮度同步至系统亮度
public static void saveBrightness(ContentResolver resolver, int brightness) {
//改变系统的亮度值
//设置为手动调节模式
Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS_MODE,
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
//保存到系统中
Uri uri = android.provider.Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS);
android.provider.Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS, brightness);
resolver.notifyChange(uri, null);
}

}

0 comments on commit e2f2e99

Please sign in to comment.