7

我有一個項目中,我設置好的:功能自定義標題:不能在API 11結合自定義標題及以上

  • 的minSdkVersion設置好的10
  • MainActivity是TabActivity

守則onCreate方法是這樣的:

super.onCreate(savedInstanceState); 

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.main); 
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title); 
... 

以前的設置,一切正常!但是,如果我設置的minSdkVersion到11以上,就會出現此異常:

android.util.AndroidRuntimeException: You cannot combine custom titles with other title features 

我不明白爲什麼會發生這只是改變的minSdkVersion。 我在這個網站上發現了很多關於這個問題的信息。我試着設置:

  • Theme.NoTitleBar在主要佈局和之後清單文件太
  • 我把這些三線在所有可能的位置
  • 如果我評論第一線,當我在某事物發生的NullPointerException我CustomTitle佈局我的TextView參考
  • 我試過設置,theme.xml文件中的聲明,「windowNoTitle」 =真

由於我使用可從API函數11只,我想在加載應用程序之前,請將minSdk設置爲11。我能怎麼做 ??我需要幫助

編輯:隨着的minSdkVersion = 10和Theme.NoTitleBar的清單,會發生同樣的錯誤。刪除它,一切都像以前一樣工作。 任何人都可以提供工作代碼(清單和活動代碼),以便在API爲11或更高時設置自定義標題? Thx much

+0

沒有人能幫助我嗎? – kinghomer

+0

有使用很少使用的標籤沒有多大用處,例如除tag [tag:android]以外的任何標籤值都不會被任何人使用。爲什麼無人接聽的原因可能是因爲你試圖做什麼樣的錯誤提示正好相反。 –

回答

37

由我自己修復。我不知道爲什麼,只是在manifest文件「主題」屬性爲每個活動的聲明,所有的作品中加入:

從這:

<activity 
     android:name=".CheckActivity" 
     android:configChanges="orientation" 
     android:screenOrientation="portrait" 
</activity> 

要這樣:

<activity 
     android:name=".CheckActivity" 
     android:configChanges="orientation" 
     android:screenOrientation="portrait" 
     android:theme="@android:style/Theme" > 
</activity> 
+1

這對我有效。我只是將android:theme =「@ andriod:style/Theme」添加到我的活動中,並且工作正常。就我而言,這是我的藍牙活動! – BostonGeorge

3

@kinghomer我已經嘗試CUSTOM_TITLE其實在2.2(API 8)上。讓我試試API 11並回復你!

在此之前,你不需要在任何地方製作Theme.NoTitleBar,可以直接在.java文件中進行控制。給我一些時間,會回來!

+0

好吧,我會等待:)。 Thx – kinghomer

+0

關於它的消息? – kinghomer

+0

嘿!這樣可行!你做了一些工作。交叉檢查! – Charan

0

資源/值-V11 defalut使用此代碼:

<style name="AppBaseTheme" parent="android:Theme.Holo.Light"> 
     <!-- API 11 theme customizations can go here. --> 
</style> 

變化 「機器人:Theme.Holo.Light」 到「@android:款式/本我「會沒事的!

溫馨提示:如果您的項目不具有「RES /值-V11」,然後檢查你的項目中引用「LIB項目」

0

除了公認的答案,還有另一種方式來解決這個問題:

<application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/CustomTheme" > 

在基於xml的mainifest中將theme歸因於application,這應該適用於所有活動。

0

當您嘗試添加自定義標題欄以及通過ActionBarActivityAppcomActivity擴展您的活動時,會出現此問題。這兩個活動類已經定義了標題欄。 所以,當你試圖添加自己的自定義標題欄衝突時,要使用的標題欄 - 自定義一個或活動提供的一個擴展。

爲了解決這個問題,只是Activity它沒有任何預定義的標題欄拓展業務,所以你將沒有任何衝突被接受。

public void MyActivy extends Activity 
{ 

    // your code 

} 
0

我只是在AndroidManifest.xml文件中添加activityandroid:theme="@android:style/Theme"它的工作超精細。

<activity 
     android:name=".MainActivity" 
     android:theme="@android:style/Theme" > 
</activity> 

希望這也適用於你。