0

我的 TabHost 有一个很大的问题。虽然我已经声明我的所有活动(包括我的 TabHost 活动)忽略方向和键盘隐藏,但如果我翻转我的手机(Android 4.0)它仍然会重新创建活动。

这是我的清单的缩短版本:

<application
    android:icon="@drawable/icon"
    android:label="@string/app_name" >
    <uses-library android:name="com.google.android.maps" />

    <activity
        android:name=".TabHost"
        android:configChanges="orientation|keyboardHidden"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".Activity1"
        android:configChanges="orientation|keyboardHidden"
        android:label="@string/app_name" />
    <activity
        android:name=".Activity2"
        android:configChanges="orientation|keyboardHidden"
        android:label="@string/app_name" />
    <activity
        android:name=".Activity3"
        android:configChanges="orientation|keyboardHidden"
        android:label="@string/app_name" />
</application>

我不认为活动的代码会有帮助?!
但是,如果可以,请告诉我,我也会发布它。


亲切的问候

4

1 回答 1

3

如果您试图停止屏幕旋转,请AndroidManifest.xml在每个活动中使用以下代码。

android:screenOrientation="nosensor"

更新

使用时根据APIandroid:configChanges="orientation|keyboardHidden"

“方向”

屏幕方向发生了变化——用户旋转了设备。注意:如果您的应用程序以 API 级别 13 或更高级别为目标(由 minSdkVersion 和 targetSdkVersion 属性声明),那么您还应该声明“screenSize”配置,因为当设备在纵向和横向之间切换时它也会改变。

因此,如果您的目标是 API 级别 13 或更高级别,您还必须指定屏幕尺寸。

于 2012-04-02T12:58:09.590 回答