ActionBar中的setHomeButtonEnabled与setDisplayHomeAsUpEnabled方法理解

原创 2016年06月01日 15:53:39


在使用Actionbar或者用Toolbar的时候通常要设置setHomeButtonEnabled与setDisplayHomeAsUpEnabled


首先看一下源码对于setHomeButtonEnabled的介绍


/**
 * Enable or disable the "home" button in the corner of the action bar. (Note that this
 * is the application home/up affordance on the action bar, not the systemwide home
 * button.)
 *
 * <p>This defaults to true for packages targeting &lt; API 14. For packages targeting
 * API 14 or greater, the application should call this method to enable interaction
 * with the home/up affordance.
 *
 * <p>Setting the {@link #DISPLAY_HOME_AS_UP} display option will automatically enable
 * the home button.
 *
 * @param enabled true to enable the home button, false to disable the home button.
 */
public void setHomeButtonEnabled(boolean enabled) { }

看到源码中的介绍:启用或禁用actionbar右上角的“主页”按钮。(注意,这是操作栏,而不是全系统home键的应用程序.)-在API 14(Android 4.0)之前默认的是true,但是在API 14之后需要调用此方法来设置启用 右上角的按钮功能。该方法的作用:决定左上角的图标是否可以点击。

setDisplayHomeAsUpEnabled

/**
 * Set whether home should be displayed as an "up" affordance.
 * Set this to true if selecting "home" returns up by a single level in your UI
 * rather than back to the top level or front page.
 *
 * <p>To set several display options at once, see the setDisplayOptions methods.
 *
 * @param showHomeAsUp true to show the user that selecting home will return one
 *                     level up rather than to the top level of the app.
 *
 * @see #setDisplayOptions(int)
 * @see #setDisplayOptions(int, int)
 */
public abstract void setDisplayHomeAsUpEnabled(boolean showHomeAsUp);

设置添加一个返回的图标,如果传入的参数是true,然后点击按钮的时候,会返回到此页面的前一页。

其他的两个方法

actionBar.setDisplayShowHomeEnabled(true)   //使左上角图标是否显示,如果设成false,则没有程序图标,仅仅就个标题,否则,显示应用程序图标,


actionBar.setDisplayShowCustomEnabled(true)  // 使自定义的普通View能在title栏显示,即actionBar.setCustomView能起作用。











版权声明:本文为博主原创文章,未经博主允许不得转载。

关于ActionBar中setDisplayHomeAsUpEnabled(true)等方法的问题

对于ActionBar中程序图标的点击问题,困扰了我很久,先将该知识点总结如下: setHomeButtonEnabled这个小于4.0版本的默认值为true的。但是在4.0及其以上...
  • andygo_520
  • andygo_520
  • 2016年05月17日 21:39
  • 3185

android程序右上角ActionBar上显示三个点(overflow)

很多的应用在ActionBar的右上角都有个三个点,在里面有什么设置,登陆等其他功能,如下所示: 这个三个点的设置是Activity类中一个方法,可以在想显示这个三个...
  • zhangjikuan
  • zhangjikuan
  • 2016年02月15日 14:49
  • 4602

使ActionBar(Toolbar)的Up导航和实体按键Back实现同步

android的toolbar的返回键有必要存在吗? google自家应用也保留了toolbar的返回键。 觉得和下方的实体返回键重了。 不管什么原因大众的使用习惯就是这样, 所以呢在开发过程中...
  • YLBF_DEV
  • YLBF_DEV
  • 2016年05月05日 15:41
  • 1807

Pro Android学习笔记(四八):ActionBar(1):Home图标区

ActionBar在Android 3.0 SDK中为平板引入,在4.0中也可以在phone中使用。在title中提供类似tab和菜单的效果,有三种形式:Tabbed action bar,list ...
  • flowingflying
  • flowingflying
  • 2013年11月01日 15:25
  • 24346

Android群英传笔记——第十二章:Android5.X 新特性详解,Material Design UI的新体验

Android群英传笔记——第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Androi...
  • qq_26787115
  • qq_26787115
  • 2016年05月02日 13:19
  • 6107

改变ActionBar右侧三个小点的颜色

使用的是Support v7 21+的兼容库来实现 material style,改变ActionBar右侧三个小点的颜色...
  • xujinyang1234
  • xujinyang1234
  • 2015年03月11日 13:20
  • 3598

如何自定义ActionBar显示标题在中间位置

在Android3.0以后就开始引入了ActionBar了,这篇重点记录如何自定义ActionBar让标题显示在中间的位置。虽然android手机有自带的返回键,不过当今很多应用还是添加actionb...
  • tan313
  • tan313
  • 2015年04月14日 11:29
  • 2208

【Android】actionbar显示选项菜单

Actionbar是android3.0的重要更新之一。
  • zhangzeyuaaa
  • zhangzeyuaaa
  • 2014年11月04日 13:44
  • 22649

Android中ActionBar中不显示overflow(就是三个点的那个按钮)

d's'
  • jdsjlzx
  • jdsjlzx
  • 2014年07月02日 17:15
  • 15610

Android ActionBar 更改返回图标

今天在修改客户所提BUG时,遇到了有些界面需要修改ActionBar的返回图标,上网查了下,有两种方式可以修改: 1. 在java代码中修改: actionBar = getActionBa...
  • tfs080640234
  • tfs080640234
  • 2015年01月10日 15:47
  • 3153
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ActionBar中的setHomeButtonEnabled与setDisplayHomeAsUpEnabled方法理解
举报原因:
原因补充:

(最多只允许输入30个字)