admin管理员组

文章数量:1516870

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();  
	        }  
	   }  

参考链接:


本文标签: 系统节屏幕亮编程