2012-04-02 119 views
0

我的TabHost有一個很大的問題。雖然我已經宣佈所有活動(包括我的TabHost活動)忽略方向和鍵盤隱藏,但如果我翻轉手機(Android 4.0),它仍會重新創建活動。configChanges不被TabHost識別?

這裏是我的清單縮短版:

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

我不認爲這些活動的代碼將有助於?
但是,如果它會,讓我知道,我也會發布它。


親切的問候

回答

3

,如果你想停止屏幕使用下面你AndroidManifest.xml代碼爲每個活動的旋轉。

android:screenOrientation="nosensor" 

UPDATE

使用時android:configChanges="orientation|keyboardHidden"

「取向」

屏幕方向已經改變根據API - 用戶已旋轉的裝置。 注意:如果您的應用程序的目標API等級爲13或更高(由minSdkVersion和targetSdkVersion屬性聲明),那麼您還應該聲明「screenSize」配置,因爲當設備在縱向和橫向之間切換時它也會發生更改。

因此,如果您的目標是API級別13或更高,則您還必須指定屏幕大小。

+0

那麼屏幕應該仍然可以旋轉。但是當它發生時,它不應該重新啓動/重新創建活動本身。 – user754730 2012-04-02 13:18:17

+0

更新:測試和這工作...哇我總是驚訝什麼依賴是需要一些時間在Android的世界;)非常感謝幫助很多! – user754730 2012-04-02 14:19:13

+0

很高興它爲你工作。你是對的,谷歌因不斷改變和棄用東西而聲名狼借 – Mayank 2012-04-04 01:02:40