Android问题集锦之四十一|Android问题集锦之四十一 getActionBar为null的解决以及ActionBar的Back键

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

【Android问题集锦之四十一|Android问题集锦之四十一 getActionBar为null的解决以及ActionBar的Back键】我们用getActionBar获得ActionBar实例,将其隐藏或做其他操作。

ActionBar actionBar = getActionBar();
  • 1

不过我这样做了,但是actionBar是null。
问题是由Activity基类引起的,当使用AppCompatActivity或其他support包中的基类,那么获得ActionBar实例需要用另一个相应的方法,那就是getSupportActionBar(),ActionBar也要使用相应support包下的。
android.support.v7.app.ActionBar actionBar = getSupportActionBar();
  • 1
  • 2

那么这样就可以ActionBar自带的back功能了。
if(actionBar != null) {actionBar.setDisplayHomeAsUpEnabled(true); }
  • 1
  • 2
  • 3

@Overridepublic boolean onOptionsItemSelected(MenuItem item) {int id = item.getItemId(); //noinspection SimplifiableIfStatementif(id == R.id.home) {//back keyIntent intent = NavUtils.getParentActivityIntent(this); if(intent != null) {if (NavUtils.shouldUpRecreateTask(this, intent)) {TaskStackBuilder.create(this).addNextIntentWithParentStack(intent).startActivities(); } else {intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); NavUtils.navigateUpTo(this, intent); }} else {Log.e(TAG,"intent is null"); }}return super.onOptionsItemSelected(item); }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24


给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow Android问题集锦之四十一|Android问题集锦之四十一 getActionBar为null的解决以及ActionBar的Back键
文章图片

    推荐阅读