Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.IllegalStateException:活动已具有由window decor.Donot request window.FEATURE\u SUPPORT\u action\u栏提供的操作栏_Java_Android_Android Studio_Navigation - Fatal编程技术网

java.lang.IllegalStateException:活动已具有由window decor.Donot request window.FEATURE\u SUPPORT\u action\u栏提供的操作栏

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

我正在向我的应用程序的仪表板添加一个侧导航,同时在仪表板的布局文件中添加了一个自定义工具栏

xml文件的工具栏代码为-

<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//这是必需的选项
.....

你能告诉我如何定制主题吗?你到底想定制什么,这个答案不是解决了你的问题吗