私はこのコードを持っているこの4行のJavaコードは、アンドロイドアプリケーションの意味は何ですか?私のJavaアプリケーションで
@Override
public void onAttachedToWindow()
{
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
super.onAttachedToWindow();
}
私はアンドロイド2.3(レベル10)のためにそれをビルドするときには、コンパイルし、正常に動作します。しかし、私はアンドロイド4.0(レベル15)のためにそれをビルドするとき、それは実行時にコンパイルし、私にクラッシュを与え、次のエラー
07-16 14:00:03.090: E/AndroidRuntime(29487): FATAL EXCEPTION: main
07-16 14:00:03.090: E/AndroidRuntime(29487): java.lang.IllegalArgumentException: Window type can not be changed after the window is added.
私は、この行をコメントしてビルドするとき、それは正常に動作していない問題..
//this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
だから私はなぜこのおかげでこのコードは何を意味するのか分かりません。
編集: いくつかの参照が代わりにwindowFocusChangedを使ってみて、私もwindowAttachedといくつかの問題を抱えていたここ
when I run app on my phone.The version is android 4.0.3
あなたの活動は14その後、以下にブラックベリー –
単に設定targetSDKでonDisplayのように前面に来るとき、それは単に意味します。その後、それは動作しますhttp://stackoverflow.com/a/32587231/3496570 – Nepster