Android 设置屏幕亮度

setScreenMode(Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL); // 手动调节屏幕亮度
final String[] bgLight = new String[] {"暗","稍暗","标准","稍亮","亮"};
            
    	    Dialog alertDialog3 = new AlertDialog.Builder(MainActivity.this)
            .setTitle("调整屏幕亮度")
            .setSingleChoiceItems(bgLight, 0, new DialogInterface.OnClickListener() {
    	 
                @Override
                public void onClick(DialogInterface dialog, int which) {
                	selectedBrightness = which;
                    }
                }).
                setPositiveButton("确认", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    	
                    	int brightness = 0;
                    	
                        switch(selectedBrightness) 
        	            { 
        	                case 0:brightness = 10; break; 
        	                case 1:brightness = 40; break; 
        	                case 2:brightness = 75; break;
        	                case 3:brightness = 110; break; 
        	                case 4:brightness = 140; break; 
        	                default:brightness = 75;  
        	            } 
                        setScreenBrightness(brightness);
                        saveScreenBrightness(brightness);
                    }
                 }).
               setNegativeButton("取消", new DialogInterface.OnClickListener() {
            	    @Override
            	    public void onClick(DialogInterface dialog, int which) {
                    // TODO Auto-generated method stub
            	        }
            	    }).
               create();
    	       alertDialog3.show();
/**
	 * 设置当前屏幕亮度的模式    
	 * SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度
	 * SCREEN_BRIGHTNESS_MODE_MANUAL=0  为手动调节屏幕亮度
	 */
	  private void setScreenMode(int paramInt){
	    try{
	      Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, paramInt);
	    }catch (Exception localException){
	      localException.printStackTrace();
	    }
	  }
	  /**
	   * 设置当前屏幕亮度值  0--255
	   */
	   private void setScreenBrightness(int paramInt){
		   
		    //Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, paramInt);
		    //paramInt = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, -1);
		    WindowManager.LayoutParams localLayoutParams =  getWindow().getAttributes();
		    float f = paramInt / 255.0F;
		    localLayoutParams.screenBrightness = f;
		    getWindow().setAttributes(localLayoutParams);
		   
	   }
	   /**
		   * 保存当前屏幕亮度值  0--255
		   */
	   private void saveScreenBrightness(int paramInt){  
	        try{  
	          Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, paramInt);  
	        }  
	        catch (Exception localException){  
	          localException.printStackTrace();  
	        }  
	   }  

参考链接:

http://daikainan.iteye.com/blog/1455323

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值