java.lang.IllegalStateException:活动已具有由window decor.Donot request window.FEATURE\u SUPPORT\u action\u栏提供的操作栏
我正在向我的应用程序的仪表板添加一个侧导航,同时在仪表板的布局文件中添加了一个自定义工具栏 xml文件的工具栏代码为-java.lang.IllegalStateException:活动已具有由window decor.Donot request window.FEATURE\u SUPPORT\u action\u栏提供的操作栏,java,android,android-studio,navigation,Java,Android,Android Studio,Navigation,我正在向我的应用程序的仪表板添加一个侧导航,同时在仪表板的布局文件中添加了一个自定义工具栏 xml文件的工具栏代码为- <androidx.appcompat.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_c
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#00FFFFFF"
android:minHeight="?attr/actionBarSize"
android:theme="?attr/actionBarTheme"
app:navigationIcon="@drawable/menu_toolbar"/>
运行时,应用程序崩溃,logcat中显示以下错误消息-
2020-10-17 16:49:52.568 24803-24803/com.example.bottomnav E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.bottomnav, PID: 24803
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.bottomnav/com.example.bottomnav.ClientBottomNav}: 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.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3311)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3460)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2047)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:224)
at android.app.ActivityThread.main(ActivityThread.java:7592)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
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.
at androidx.appcompat.app.AppCompatDelegateImpl.setSupportActionBar(AppCompatDelegateImpl.java:572)
at androidx.appcompat.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:159)
at com.example.bottomnav.ClientBottomNav.onCreate(ClientBottomNav.java:60)
at android.app.Activity.performCreate(Activity.java:7893)
at android.app.Activity.performCreate(Activity.java:7880)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3286)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3460)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2047)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:224)
at android.app.ActivityThread.main(ActivityThread.java:7592)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
我认为默认情况下有一个ActionBar,它与新工具栏有一些问题,如何解决这个问题?正如错误描述的那样 原因:java.lang.IllegalStateException:此活动已发生 由窗户装饰提供的动作条。不要求 Window.FEATURE\支持\操作\栏并在中将windowActionBar设置为false 您的主题将改为使用工具栏 因此,您的活动已经有了
actionBar
,您正在提供一个,为了解决这个问题,请使您的主题扩展没有actionBar
的父主题,或者将actionBar
设置为false,如下所示
<style name="AppTheme" parent="your parent theme here" //>
<!-- Customize your theme here. -->
.....
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/gray_dark_bg</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item> // this is the required option
.....
</style>
.....
@颜色/原色
@颜色/灰色\u深色\u背景
@颜色/颜色重音
false//这是必需的选项
.....
你能告诉我如何定制主题吗?你到底想定制什么,这个答案不是解决了你的问题吗