
Android v7包下Toolbar和ActionBarActivity实现后退导航效果
发布日期:2021-05-09 01:54:11
浏览次数:25
分类:精选文章
本文共 1028 字,大约阅读时间需要 3 分钟。
android.support.v7包下的ToolBar和ActionBarActivity,均自带后退导航按钮,只是要手动开启,让它显示出来。 先来看看ToolBar,页面前台代码:
如果要让后退按钮显示出来,需要在后台添加如下的代码
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
当然添加这行代码后仅仅是出现一个后退的箭头而已,点击后并没反应,需要继续添加监听事件才行,默认添加的按钮id是固定的,android.R.id.home,在onOptionsItemSelected中再添加如下的监听事件
case android.R.id.home: finish(); break;
其实这样并不是真正意义上的返回上一个页面,而是将这个页面销毁,从而显示上一个页面,也就是跳转之前的页面。
那么ActionBarActivity如何设置呢,看下面:
首先在要返回的页面A中设置该页面为要返回的页面
setHomeButtonEnabled
然后在清单文件中设置页面B的parentActivityName为页面A即可,但是这个属性在API 16之后才可,之前的话要用meta-data才可
要在页面B中显示后退按钮,也要添加代码
ActionBar actionBar=getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true);
这样在页面B的标题栏左上角就公显示一个后退箭头,点击后就会自动返回页面A,并不需要添加额外的监听事件。
总结:看起来ActionBarActivity自带的后退导航要比ToolBar的更方便,但是到目前为止,google已不建议使用ActionBarActivity,现在在AS中新建Activity继承的是AppCompatActivity,至于为什么我这个初学者并不知道,我也尝试实现ToolBar的自动后退效果,但是虽然ToolBar也有对应的setHomeButtonEnabled方法和setDisplayHomeAsUpEnabled,但是并不起作用,google后找到的都是说的要添加监听事件,并没有发现有说可以实现类似ActionBarActivity的效果,最后放弃。
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年05月01日 00时12分23秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
linux sed命令详解
2023-02-01
Linux Shell Shock漏洞利用和实战
2023-02-01
linux shell wc 命令
2023-02-01
linux shell 的 for 循环
2023-02-01
linux shell 编程 9 脚本中调用脚本
2023-02-01
Linux shell (ssh批量配置免秘)读取配置文件,进行远程操作
2023-02-01
Linux Shell——流程控制
2023-02-01
Linux Shell之三 高级变量及字符串
2023-02-01
Linux Shell编程新手入门教程(六)
2023-02-01
Linux Shell编程最重要的十个核心概念,零基础入门到精通,收藏这一篇就够了
2023-02-01
Linux Shell编程(19)——测试与分支
2023-02-01
Linux Shell脚本入门--grep命令详解
2023-02-01
Linux Shell脚本处理JSON字符串
2023-02-01
Linux Shell脚本通过参数名传递参数
2023-02-01
Linux Shell语言并发执行多条命令
2023-02-01
Linux signal
2023-02-01
Linux SNMP支持IPv6配置实战
2023-02-01
Linux Socket学习--域和套接口简介
2023-02-01
linux sort 用法
2023-02-01