ActionBar对象返回null

时间:2015-10-16 12:11:45

标签: android android-actionbar android-theme

我将下面的actionBar对象视为null,因此在执行NullPointerException时会获得actionBar.setDisplayHomeAsUpEnabled(true)。以下是我的代码,它是从片段的onResume调用的。

ActionBar actionBar = getActivity().getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);

Followwing是我在onCreate中应用于活动的主题:

 <style name="MyActionBarTheme" parent="Theme.AppCompat.Light">

        <item name="actionBarStyle">@style/MyActionBar</item>
        <item name="actionBarTabTextStyle">@style/MyActionBarTabText</item>
        <item name="actionMenuTextColor">@color/green</item>
        <item name="colorPrimary">@color/green</item>
        <item name="colorPrimaryDark">@color/greenD</item>

    </style>

我的应用程序将最小api级别设置为14。 请帮帮我,解释为什么ActionBar对象返回为null。

修改     getActivity().getActionBar();Fragment中返回null。

2 个答案:

答案 0 :(得分:1)

如果您使用 appCompat ,则需要使用getSupportActionBar()代替getActionBar()

答案 1 :(得分:0)

使用String myText = "Snowmap"; boolean check = myText.equals(box[0].getText()); 代替getSupportActionBar()时,您需要使用AppCompatActivity

修改

使用getActionBar()主题时,您必须使用AppCompat

示例代码如何获取AppCompatActivity

ActionBar