0

このトピックに関連する同様の問題をすでに見つけており、解決策は「screenSize」を android:configChanges 属性に追加することであることがわかりました(興味がある場合は、 onConfigurationChanged が呼び出されないを参照してください)。しかし、私の状況ではうまくいきません。

私のアプリケーションは Android 2.2 (API レベル 8) でビルドされ、デバイスには 2.3 (API レベル 9) がインストールされています。手がかりはありますか?前もって感謝します。

関連する Manifest.xml フラグメントが添付されています。

<application android:icon="@drawable/icon" android:label="@string/app_name"
         android:debuggable="true">
        <activity android:name="com.erlinyou.Erlinyou"
                  android:label="@string/app_name"                  
                  android:configChanges="orientation">                  
                  android:launchMode="singleInstance">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
</application>
4

2 に答える 2

0

targetSdkVersionの設定によって異なります。以下の Google の説明を参照してください。その意味は:

targetSdkVersion が13(HONEYCOMB_MR2) 未満の場合、Activity にandroid:configChanges="orientation"を設定 します。

targetSdkVersionが 13(HONEYCOMB_MR2) 以上の場合、Activity にandroid:configChanges="orientation|screenSize"を設定します。

http://developer.android.com/reference/android/R.attr.html#configChanges screenSize 現在使用可能な画面サイズが変更されました。アプリケーションが少なくとも HONEYCOMB_MR2 を対象としていない場合、アクティビティは常にこれ自体を処理します (変更によって再起動が発生することはありません)。これは現在利用可能なサイズの変化を表しているため、ユーザーが横向きと縦向きを切り替えると変化します。

それがうまくいくことを願っています。

于 2013-11-14T00:08:54.767 に答える