2011-10-21 45 views

答えて

4

からprogress範囲のデフォルト値:あなたがコントロールのようなプログレスバーを実装したいと、私はシークバーを実装するためにあなたを示唆している、今

WindowManager.LayoutParams lp = getWindow().getAttributes(); 
lp.screenBrightness = 100/100.0f; 
getWindow().setAttributes(lp); 

を、これを使用すると、シークバーのトラッキング値に基づいて簡単に増減することができます。

Hereは、SeekBarを使用して実装された完全な例です。

+0

しかし、画面の輝度バーが消えます。どのようにそれを消えさせない? –

1

使用し、これは明るさを変更する(システム全体)が

ContentResolver cr = getContentResolver(); 
int brightness = Settings.System.getInt(cr,Settings.System.SCREEN_BRIGHTNESS);    
Settings.System.putInt(cr, Settings.System.SCREEN_BRIGHTNESS, brightness); 
WindowManager.LayoutParams lp = getWindow().getAttributes(); 
lp.screenBrightness = brightness/255.0f; 
getWindow().setAttributes(lp); 

あなたがthis exampleを使用しonProgressChanged()に上記のコードを呼び出すことができます。あなたは、画面の明るさを設定できます。これを使って0から100の

0

WindowManager.LayoutParamsを使用して画面の明るさを変更できます。 getWindow().getAttributes()を使用してLayoutParamsを取得し、フィールドscreenBrightnessに0〜1(暗い0、明るい1)の数値を設定し、変更したLayoutParamsオブジェクトでgetWindow().setAttributes()を呼び出します。

関連する問題