0

アプリケーションを最小のAPIレベル8で実行したい...android:configChanges = "orientation |keyboardHidden"で試しました。以前のバージョンでは、onConfigurationchanged()メソッドが呼び出され、方向が処理されます。 3.2以降のバージョンのonConfigurationchanged()は呼び出されず、アクティビティが再作成されます。そこで、android:configChanges = "orientation |keyboardHidden | ScreenSize"を追加しましたが、これをコンパイルすると、アプリケーションは3.2ICS未満のバージョンでは実行できません。 -アクティビティを作成しますか?

4

2 に答える 2

1

targetSdkVersionマニフェストに設定しましたか?例えば、

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16" />

targetSdkVersionコードが。以上である限り、コードは機能するはず13です。SDKバージョン3.2以降に対してもプロジェクトをビルドしていることを確認してください。

于 2012-07-30T04:29:21.797 に答える
0

また、パラメータ「screenSize」をandroid:configChanges = "orientation | screenSize|keyboardHidden"に追加する必要があります

ドキュメント: 注意:Android 3.2(APIレベル13)以降、デバイスが縦向きと横向きを切り替えると、「画面サイズ」も変化します。したがって、APIレベル13以上(minSdkVersionおよびtargetSdkVersion属性で宣言されている)で開発するときに方向の変更によるランタイムの再起動を防ぎたい場合は、「orientation」値に加えて「screenSize」値を含める必要があります。つまり、android:configChanges = "orientation|screenSize"をdecalareする必要があります。ただし、アプリケーションがAPIレベル12以下を対象としている場合、アクティビティは常にこの構成変更自体を処理します(Android 3.2以降のデバイスで実行している場合でも、この構成変更によってアクティビティが再開されることはありません)。

于 2013-01-23T15:05:34.920 に答える