安卓开发报错解决办法does not have an ActionBar set via setSupportActionBar()

这篇具有很好参考价值的文章主要介绍了安卓开发报错解决办法does not have an ActionBar set via setSupportActionBar()。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

做安卓应用开发的时候遇到一个奇怪的报错,搜遍了网上都没有,报错代码如下,希望后面遇到此问题的人可以快速定位问题

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xx/com.xx.mainpage.MainActivity}: java.lang.IllegalStateException: Activity com.xx.mainpage.MainActivity@f0f3ecc does not have an ActionBar set via setSupportActionBar()
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3707)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3864)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
        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:2253)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loopOnce(Looper.java:201)
        at android.os.Looper.loop(Looper.java:288)
        at android.app.ActivityThread.main(ActivityThread.java:7886)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1035)
     Caused by: java.lang.IllegalStateException: Activity com.xx.mainpage.MainActivity@f0f3ecc does not have an ActionBar set via setSupportActionBar()
        at androidx.navigation.ui.ActionBarOnDestinationChangedListener.setTitle(ActionBarOnDestinationChangedListener.kt:40)
        at androidx.navigation.ui.AbstractAppBarOnDestinationChangedListener.onDestinationChanged(AbstractAppBarOnDestinationChangedListener.kt:87)
        at androidx.navigation.NavController.addOnDestinationChangedListener(NavController.kt:403)
        at androidx.navigation.ui.NavigationUI.setupActionBarWithNavController(NavigationUI.kt:284)
        at com.xx.mainpage.MainActivity.onCreate(MainActivity.java:36)
        at android.app.Activity.performCreate(Activity.java:8054)
        at android.app.Activity.performCreate(Activity.java:8034)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1341)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3688)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3864) 
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103) 
        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:2253) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loopOnce(Looper.java:201) 
        at android.os.Looper.loop(Looper.java:288) 
        at android.app.ActivityThread.main(ActivityThread.java:7886) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1035) 

问题锁定在MainActivity中,后面发现注释掉这句代码就可以正常运行了

supportRequestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题

怀疑是此句代码隐藏了标题栏导致与setSupportActionBar()发生了冲突?文章来源地址https://www.toymoban.com/news/detail-580296.html

到了这里,关于安卓开发报错解决办法does not have an ActionBar set via setSupportActionBar()的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包