1、问题日志
今天在 Android 12 新版本手机上跑一个demo出现崩溃,崩溃日志如下
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 t
2、问题原因
由于我在代码中使用了ToolBar,并在activity中调用了setSupportActionBar(toolbar);
3、解决方案
给报错的activity增加对应的theme或者修改theme主题
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
4、备注
我做的这个Activity是用Toolbar来替代ActionBar,因此需要指定一个不带ActionBar的theme主题。
通常有两种可以选择:
Theme.AppCompat.NoActionBar
Theme.AppCompat.Light.NoActionBar
第一个表示深色主题,它会将界面的主题颜色设置成深色,陪衬颜色设为淡色。
第二种表示淡色主题,她会将界面的主题颜色设置为淡色,而陪衬颜色设置为深色。