直播小程序源码,屏幕亮度跟随系统亮度变化

直播小程序源码,屏幕亮度跟随系统亮度变化

1、布局文件

 

1
<br><?xml version="1.0" encoding="utf-8"?><br><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"<br>    android:layout_width="match_parent"<br>    android:layout_height="match_parent"<br>    android:orientation="vertical"><br>    <TextView<br>        android:layout_width="wrap_content"<br>        android:layout_height="wrap_content"<br>        android:text="水平滑动调节亮度"<br>        android:textSize="20sp" /><br>    <SeekBar<br>        android:id="@+id/seekbar_light"<br>        android:layout_width="match_parent"<br>        android:layout_height="wrap_content"<br>        android:layout_marginBottom="20dp"<br>        android:layout_marginTop="20dp"<br>        android:max="255" /><br>    <TextView<br>        android:id="@+id/tv_light_value"<br>        android:layout_width="wrap_content"<br>        android:layout_height="wrap_content"<br>        android:textSize="20sp" /><br></LinearLayout>

2、工具类

 

1
<br>public class BrightnessUtil {<br>    /**<br>     *获取系统屏幕亮度<br>     */<br>    public static int getBrightness(Context context) {<br>        int brightness = -1;<br>        ContentResolver resolver = context.getContentResolver();<br>        try {<br>            brightness = Settings.System.getInt(resolver, Settings.System.SCREEN_BRIGHTNESS);<br>        } catch (Settings.SettingNotFoundException e) {<br>            e.printStackTrace();<br>        }<br>        return brightness;<br>    }<br>    /**<br>     *获取系统最大屏幕亮度<br>     */<br>    public static int getMaxBrightness(Context context) {<br>        int brightnessSettingMaximumId = context.getResources().getIdentifier("config_screenBrightnessSettingMaximum", "integer", "android");<br>        int brightnessSettingMaximum = context.getResources().getInteger(brightnessSettingMaximumId);<br>        return brightnessSettingMaximum;<br>    }<br>    /**<br>     *调节当前屏幕亮度<br>     */<br>    public static void SetSystemLight(int lightnumber, Activity activity){<br>        Window window = activity.getWindow();//对当前窗口进行设置<br>        WindowManager.LayoutParams layoutparams = window.getAttributes();//获取窗口属性为后面亮度做铺垫作用<br>        layoutparams.screenBrightness =lightnumber / 255.0f;//用窗口管理(自定义的)layoutparams获取亮度值,android亮度值处于在0-255之间的整形数值<br>        window.setAttributes(layoutparams);//设置当前窗口屏幕亮度<br>    }<br>}

 

3、实现类(活动)

 

1
<br>public class MainActivity extends AppCompatActivity {<br>    private static final String TAG ="MainActivity" ;<br>    private TextView textView;<br>    private SeekBar seekBar;<br>    @Override<br>    protected void onCreate(Bundle savedInstanceState) {<br>        super.onCreate(savedInstanceState);<br>        setContentView(R.layout.activity_main);<br>        initBrightness();<br>        /* 监听SeekBar */<br>        seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {<br>            /*拖动条停止拖动时调用 */<br>            @Override<br>            public void onStopTrackingTouch(SeekBar seekBar) {<br>                //Log.i(TAG, "拖动停止");<br>            }<br>            /*拖动条开始拖动时调用*/<br>            @Override<br>            public void onStartTrackingTouch(SeekBar seekBar) {<br>                //Log.i(TAG, "开始拖动");<br>            }<br>            /* 拖动条进度改变时调用*/<br>            @Override<br>            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {<br>                textView.setText("亮度值:" + progress);<br>                //当前屏幕亮度随着进度值改变<br>                BrightnessUtil.SetSystemLight(progress,MainActivity.this);<br>            }<br>        });<br>    }<br>    /* 初始化控件 */<br>    private void initBrightness(){<br>        textView = (TextView) findViewById(R.id.tv_light_value);<br>        seekBar = (SeekBar) findViewById(R.id.seekbar_light);<br>        textView.setText("亮度值:" + BrightnessUtil.getBrightness(MainActivity.this));<br>        //将系统最大屏幕亮度值设为seekbar的最大进度值<br>        seekBar.setMax(BrightnessUtil.getMaxBrightness(MainActivity.this));<br>        //将系统当前屏幕亮度值设为seekbar当前进度值<br>        seekBar.setProgress(BrightnessUtil.getBrightness(MainActivity.this));<br>    }<br>}

 

以上就是 直播小程序源码,屏幕亮度跟随系统亮度变化,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(86)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2021-09-08 直播app系统源码通过CSS液体实现加载动画
2021-09-08 短视频商城源码,移动端左右滑动切换页面效果
2021-09-08 短视频带货系统,HTML+CSS+JS实现宇宙星球旋转动画特效
点击右上角即可分享
微信分享提示