2011-12-21 2 views
1

onAttachedToWindowが呼び出され、ウィンドウタイプがkeyguardの場合、ステータスバーを非表示にするか、無効にする方法がありますか? 私は私の活動のクラスでこれを試してみました:Android onAttachedToWindow()が呼び出されたときにステータスバーを非表示にできますか?

、これは

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setWindowAnimations(0); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    setContentView(R.layout.activity_lock); 
} 

public void onAttachedToWindow() { 
    super.onAttachedToWindow(); 
    getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 
} 

のonCreateであり、この私のマニフェスト

android:theme="@android:style/Theme.NoTitleBar.Fullscreen"; 

時には、ステータスバーが消え、他の回で、それ表示されます。

私はこのしようとした場合:

public void onAttachedToWindow() { 
    super.onAttachedToWindow(); 
    getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 
} 

を、それは私にエラーを与える:

12-22 11:03:51.209: E/AndroidRuntime(9088): android.util.AndroidRuntimeException: requestFeature() must be called before adding content 
+0

私はマニフェストのものだけを使用します。また、マニフェストではどこで使用していますか? – pablisco

+0

私はonAttachedToWindowを使用しているそのアクティビティで使用しています。とにかく、私はすでにこれを試したことを思い出して、働いていません。 – djcharon

答えて

0

[OK]を、あなたはプログラムで、ステータスバーを非表示にすることができます前に、機能を要求する必要があります。

requestWindowFeature(Window.FEATURE_NO_TITLE); 

次にフルスクリーンをリクエストするには、

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
+0

ここにonAttachedToWindow()のアクティビティにrequestWindowFeatureを追加すると、12-22 11:03:51.209:E/AndroidRuntime(9088):android.util.AndroidRuntimeException:コンテンツを追加する前にrequestFeature()を呼び出す必要があります – djcharon

+0

'onContentView'を呼び出す前に' onCreate'の中でリクエストする必要があることを付け加えてください。 – pablisco

+0

私はすでにonCreateで実装していますが、正しく動作しますが、onAttachedToWindowを追加するとステータスはランダムに消えます。 onAttachedToWindowはホームボタンを無効にしたかったので使用しました。 – djcharon

関連する問題