在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); 

06-27 20:49