android應用中讀取螢幕亮度、設定螢幕亮度、保持螢幕常量

來源:互聯網
上載者:User

標籤:

應用中讀取、設定螢幕亮度

package com.catcher.testcompass;import android.app.Activity;import android.os.Bundle;import android.provider.Settings;import android.provider.Settings.SettingNotFoundException;import android.provider.Settings.System;import android.view.View;import android.widget.EditText;import android.widget.Toast;public class ThreeActivity extends Activity {    private EditText etBrightness;        @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_third);        etBrightness = (EditText) findViewById(R.id.editText1);    }        public void getBrightness(View view){        Toast.makeText(this, "亮度="+getScreenBrightness(), Toast.LENGTH_SHORT).show();    }        public void setBrightness(View view){        int brightness=Integer.parseInt(etBrightness.getText().toString());        if (brightness>255) {            etBrightness.setError("不能超過255");            return;        }        setScreenBrightness(brightness);    }        public void setScreenBrightness(int brightness){        //如果是自動調整亮度則先換成手動調整再設定亮度        try {            if (Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC==Settings.System.getInt(getContentResolver(), System.SCREEN_BRIGHTNESS_MODE)) {                Settings.System.putInt(getContentResolver(), System.SCREEN_BRIGHTNESS_MODE,System.SCREEN_BRIGHTNESS_MODE_MANUAL);            }        } catch (SettingNotFoundException e) {            e.printStackTrace();        }        Settings.System.putInt(getContentResolver(), System.SCREEN_BRIGHTNESS, brightness);    }        public int getScreenBrightness(){        int brightness=-1;        try {            brightness=Settings.System.getInt(getContentResolver(), System.SCREEN_BRIGHTNESS);        } catch (SettingNotFoundException e) {            e.printStackTrace();        }        return brightness;    }}

AndroidManifest.xml還需要添加許可權

<uses-permission android:name="android.permission.WRITE_SETTINGS"/>

布局檔案

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:keepScreenOn="true"    android:orientation="vertical" >    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:orientation="horizontal" >        <EditText            android:id="@+id/editText1"            android:layout_width="0dp"            android:layout_weight="1"            android:layout_height="wrap_content"            android:ems="10"            android:hint="請輸入0-255的整數"            android:inputType="number" />        <Button            android:id="@+id/button1"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:onClick="setBrightness"            android:text="設定亮度" />    </LinearLayout>    <Button        android:id="@+id/button2"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:onClick="getBrightness"        android:text="顯示亮度" /></LinearLayout>

其中 android:keepScreenOn="true" 可以保持螢幕常量。

 

android應用中讀取螢幕亮度、設定螢幕亮度、保持螢幕常量

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.