TabHha不能识别configChanges?

时间:2012-04-02 12:35:49

标签: android android-tabs android-configchanges

我的TabHost存在一个非常大的问题。虽然我已经宣布我的所有活动(包括我的TabHost活动)忽略方向和keyboardHidden,但如果我翻转我的手机(Android 4.0)它仍会重新创建活动。

这是我的Manifest的缩短版本:

<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>

我认为活动的代码不会有帮助吗?!
但是,如果它会让我知道,我也会发布它。


亲切的问候

1 个答案:

答案 0 :(得分:3)

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

android:screenOrientation="nosensor"

<强>更新

根据API使用android:configChanges="orientation|keyboardHidden"

<强> “取向”

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

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