0

アクティビティの manaifest.xml は次のとおりです。

<activity
    android:name="com.wd.wuc.SearchStatusActivity"
    android:label="@string/app_name"
    android:screenOrientation="sensor"
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
    android:configChanges="orientation|keyboard"  >
</activity>

アクティビティのコードは次のとおりです。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_search_status);
    System.out.println("onCreate!!");
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    System.out.println("onConfigurationChanged!!");
}

向きを変えながら、onConfigurationChanged を実行したいと思います。
ただし、コードは onCreate メソッドのみを実行し、onConfigurationChanged は実行しません。
どうすれば変更できますか?

4

4 に答える 4

5

ドキュメント ( http://developer.android.com/guide/topics/manifest/activity-element.html ) には、次のものがあります。

If your application targets API level 13 or higher (as declared by the minSdkVersion and targetSdkVersion attributes), then you should also declare the "screenSize" configuration, because it also changes when a device switches between portrait and landscape orientations.

API 13 以降をターゲットにしている場合は、「|screenSize」を configChanges に追加してみてください。

android:configChanges="orientation|keyboard|screenSize"
于 2013-08-05T06:28:01.117 に答える
1

交換

android:configChanges="orientation|keyboard"

android:configChanges="orientation|keyboardHidden"

あなたのマニフェストファイルに。

これを参考にしてください。

于 2013-08-05T06:37:52.100 に答える
1

android:configChanges="orientation|keyboard"

この行は、キーボードと向きの変更を処理していることを Dalvik コンパイラに伝えます。この行を削除すると、確実に機能します。

于 2013-08-05T06:26:21.443 に答える
0

マニフェスト ファイルからこのタグを削除します。その後、それは動作します

android:configChanges="orientation|keyboard"
于 2013-08-05T06:24:11.130 に答える