关闭

getActionBar()返回为空 空指针错误 Caused by: java.lang.NullPointerException

标签: AndroidActionBar
399人阅读 评论(0) 收藏 举报
分类:

getActionBar()返回为空 空指针错误 Caused by: java.lang.NullPointerException

添加返回按钮时候,报错,如图:

Avtivity中代码:

代码

应用停止:

应用停止

报错提示:

  Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setDisplayHomeAsUpEnabled(boolean)' on a null object reference

原因
如果没有使用NoActionBar的样式(theme),则可能是由于当前Activity继承自AppCompatActivity。
getActionBar是Activity中的方法。

getActionBar

Added in API level 11
ActionBar getActionBar ()
Retrieve a reference to this activity's ActionBar.

Returns
ActionBar   The Activity's ActionBar, or null if it does not have one.

重构AppCompat,在新的AppCompat中,加入主题色,Toolbar等功能。
在新版本中推荐使用AppCompatActivity代替ActionBarActivity。在14年的Android5.0的时候就用Toolbar替代了ActionBar,而ActionBarActivity又被AppCompatActivity替代,所以目前最新的方式是让Activity继承自AppCompatActivity,并使用ToolBar,虽然它的用法更复杂

而AppCompatActivity来自于android.support.v7支持库.android.support.v7.AppCompatActivity
google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如Fragement,ViewPager等

v7 支持库:一些库旨在与 Android 2.3(API 级别 9)及更高版本搭配使用。这些库提供了特定的功能集,并且可以单独添加到应用中,与其他库互不影响。
注:此库依赖于 v4 支持库。

其中:

getSupportActionBar()
Support library version of getActionBar().

getSupportActionBar()提供原有 getActionBar()的功能

解决方法
首先查看你的AndroidMainiFest中theme正常,不是诸如NoActionBar的样式

 <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

其次
查看你的Activity的类型,如果继承自AppCompatActivity,则需要使用getSupportActionBar()

public class NumbersActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.word_list);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        }
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:21842次
    • 积分:300
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:1篇
    • 译文:0篇
    • 评论:2条
    文章分类
    最新评论