2013-03-02 76 views
4

在我的應用程序中,我使用了ActionBarSherlock庫。另外我正在使用自定義標題欄。 這裏去我的onCreate:您不能將自定義標題與其他標題功能結合起來

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

在我styles.mxl

<style name="MyTheme" parent="Theme.Sherlock"> 
     <item name="android:background">#ff888888</item> 
     <item name="android:windowNoTitle">false</item> 
     <item name="android:windowTitleSize">50dp</item> 
     <item name="android:windowTitleBackgroundStyle">@style/windowTitleBackgroundStyle</item> 
    </style> 
<style name="windowTitleBackgroundStyle"> 
    <item name="android:background">#00688B</item>     
</style> 

清單文件,我使用的MyTheme的活動。

android:theme="@style/MyTheme" 

該代碼具有較低的Android版本正確工作(我曾與GB2.3.5測試)。但是,當我用ICS測試時,它與下面的錯誤崩潰: 「你不能合併自定義標題與其他標題功能」 我在StackOVerflow討論徹底,但無法解決問題。 解決方案嘗試: 1)假 2)沒有值-V11文件夾

+0

檢查此:http://stackoverflow.com/questions/13197345/cannot-combine-custom-titles-with-other-title-features – Waqas 2013-03-02 06:18:10

+0

嗨Waqas,我檢查了上述鏈接,但無法獲得任何解。我需要有一個帶有兩個圖標和標題文字的自定義標題。正如概率中提到的,我正在使用actionbarsherlock。 – basu 2013-03-02 08:47:09

+0

在我的情況下,我得到了這個錯誤,因爲我在清單中爲LAUNCHER活動指定了android:theme =「@ style/Theme.Transparent」 。我刪除了該行,它工作。 <「:windowActionBar機器人」項目名稱=>假的風格,而不是使用.NoActionBar,因爲後者包括 – 2013-07-13 01:50:56

回答

10

我收到相同的異常。

這是我發現的:在較新版本的Android中,只要選擇了Holo主題,框架就會使用Window.FEATURE_ACTION_BAR功能。只要應用程序調用setFeatureInt(Window.FEATURE_CUSTOM_TITLE)並且FEATURE_ACTION_BAR已經設置,框架就會拋出異常。

在我的情況下,values-v11文件夾中的styles.xml文件重新定義了我的主題,以從android:Theme.Holo繼承。當我嘗試在Android 3.0或更高版本上運行我的應用程序時 - 它因爲Holo默認使用ActionBar而崩潰。修復很簡單。使用Holo時關閉ActionBar。下面是修改後的值-V11 \ styles.xml變化:

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

感謝@craigrf 這是更好地 添加<項目名稱=「機器人:windowNoTitle」>真 – OferR 2013-06-27 09:35:11

+0

我試穿了Android的一樣,它沒有工作。 :( – jrhamza 2015-03-22 12:28:55

2

我有同樣的問題,並解決它:

根本原因: 在清單中,我複製錯誤地從貼這個標籤我的啓動畫面進入了我的活動:@android:style/Theme.NoTitleBar 當我還在我的活動中請求FEATURE_CUSTOM_TITLE時,發生致命異常,導致衝突。

SOLUTION: 要解決它,我檢查了這些三兩件事: 1)onCreate方法:

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
     setContentView(R.layout.activity_login); 
     getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_titlebar); 

    } 

2)INSIDE您的manifest.xml: 確保線路如這些只出現在一閃屏,如果你有一個: 機器人:主題=「@機器人:風格/ Theme.NoTitleBar 移除任何其他的活動,行,如果你想有一個自定義的酒吧

在應用程序標籤,我唯一的主題標籤這一個: andr oid:theme =「@ style/AppTheme」

在activity標籤中,我沒有主題標籤。

3)轉到您活動的XML佈局,並在GRAPHIC LAYOUT模式下查看它。 Maye確定你的主題說AppTheme(它是你放在清單上的) Mine說「沒有標題」,所以這是造成這個問題的原因。