錯誤集錦之一:This Activity already has an action bar supplied by the window decor.

異常信息:java

Caused by: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.android

問題緣由:ide

當在activity中調用了setSupportActionBar(toolbar); spa


同時,AndroidManifest.xml 對應的Activity標籤的android:theme爲code

android:theme="@style/AppTheme" >

且,style資源文件中的parent爲xml

parent="Theme.AppCompat.Light.DarkActionBar

就會報這個異常。資源

問題分析:it

Using Theme.AppCompat.Light tells Android that you want the framework to provide an ActionBar for you. However, you are creating your own ActionBar (a Toolbar), so you are giving the framework mixed signals as to where you want the ActionBar to come from.io

解決方法:sed

一、在style配置文件中加上

<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>

或者,將parent改成

parent="Theme.AppCompat.Light.NoActionBar"

二、在AndroidManifest.xml 對應的Activity標籤的android:theme引用該style中的修改的主題

相關文章
相關標籤/搜索