在BaseActivity中设置ActionBar时,获取getActionBar()=null,
1、此时要先检查一下apptheme是不是设置成了NoAction了。
或者把theme修改为 Theme.AppCompat.Light.DarkActionBar 。
如下:
<style name="Theme.App" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>
2、检查item中是否有设置无action的选项。
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
修改为:
<item name="windowActionBar">true</item>
<item name="android:windowNoTitle">false</item>
3、检查是否有在activity中设置了无action,或者是全屏模式。
如下:
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);