【Android】getActionBar()为null的解决方法总结

前言

在使用 ActionBar的时候,,有时候会爆出空指针异常,这是因为应用没有获取到 ActionBar 导致的,而导致应用没有获取到 ActionBar 的原因比较多,所以我们下面就来总结一下 ActionBar 获取不到的错误原因。

解决办法检查你的应用是否设置了没有 ActionBar 的主题Theme,或者直接设置了 NoActionBar或NoTitleBar 属性,主要要检查这几点:检查 AndroidManifest.xml 中的 标签中的theme属性,然后检查各个 Activity 标签中是否有不同的 Theme 导致这个界面的 ActionBar 无法显示,@android:style/Theme.NoTitleBar和<item>false</item> <item>true</item>这样的属性都会使应用中的 ActionBar消失,切记,如果你要使用ActionBar,则一定要清除掉这些Theme属性设置,如果你的项目中 res 目录下除了 values 目录外,还有其他的res/values-v11,style/values-v14等,则这些目录中的 styles.xml 都需要检查一下,最后再检查下 Activity 代码中是否动态设置了全屏或者不显示TitleBar,代码如下: //requestWindowFeature(Window.FEATURE_NO_TITLE); //getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 上面的两句代码,上面一句设置Activity不显示TitleBar, 下一句则设置Activity为全屏模式,这两句代码都会导致 ActionBar 无法显示,从而使 getActionBar()获取失败,如果你的项目中的 Activity 有父一级别的 Activity,则也需要将父一级别的Activity中的NoTitle和全屏代码注释掉;.

如果大家有其他的有关 getActionBar() 为null的问题,方法和经验,欢迎讨论交流。

参考链接

一个人目睹沿途的风景,拿着相机,拍下沿途上的风景,

【Android】getActionBar()为null的解决方法总结

相关文章:

你感兴趣的文章:

标签云: