博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android - 页面返回上一页面的三种方式
阅读量:6617 次
发布时间:2019-06-25

本文共 1452 字,大约阅读时间需要 4 分钟。

  今年刚刚跳槽到了新公司,也开始转型做Android,由此开始Android的学习历程。

  最近在解很多UI的bug,在解bug过程中,总结了在UI的实现过程中,页面返回上一页面的几种实现方式。

 

一. 自己布置一个back的按钮或图片

   当然就要自己写回退实现的逻辑,例如back的id为R.id.back,在onClick方法中,switch case中调用finish方法,case R.id.back: finish();back();

 

二. 使用系统提供的Action Bar

       Action Bar是一种新増的导航栏功能,在Android 3.0之后加入到系统的API当中,它标识了用户当前操作界面的位置,并提供了额外的用户动作、界面导航等功能。       

       简单来说,就是系统提供的标准组件,让我们方便的实现后退功能。

       ActionBar的添加非常简单,只需要在AndroidManifest.xml中指定Application或Activity的theme是Theme.Holo或其子类就可以了。

       但有一点要注意的是,如果要在Java代码中操作ActionBar,例如setTitle,指定其文字,必须在onStart方法中进行,而不能是onCreate方法,因为在系统周期中,onStart方法时View才是可见的。

1     @Override2     public void onStart() {3         super.onStart();4         if (mIsInProvision) {5             getActionBar().setTitle(R.string.connect_to_internet);6         }7     }

  另外,如果要处理action bar的点击事件,例如点击action bar时禁止后退,只需要在onOptionsItemSelected方法中处理android.R.id.home的事件就可以了。id.home就是action bar的id。        

1     @Override 2     public boolean onOptionsItemSelected(MenuItem item) { 3         switch (item.getItemId()) { 4             case android.R.id.home: 6                     return false;12         }13         return super.onOptionsItemSelected(item);14     }

  如上的代码,点击action bar将不能回退。

 

三. 机器上的back按键

      处理此按键的后退功能,只需要在onBackPressed方法中就可以。

1     @Override2     public boolean onBackPressed() {3         return true;4     }

 

以上就是自己在解Bug中总结的三种方式,作为小白,继续学习Android~加油~

                                                   - 2016年5月6日午

 

转载于:https://www.cnblogs.com/KevinSong/p/5463518.html

你可能感兴趣的文章
数组的一些方法
查看>>
关于MFC中WM_MOUSEHOVER和WM_MOUSELEAVE消息的使用
查看>>
我的友情链接
查看>>
Android掌中游斗地主游戏源码完整版
查看>>
LeetCode - 26. 删除排序数组中的重复项
查看>>
Linux LVM逻辑卷配置过程详解
查看>>
关于IT服务管理的服务台
查看>>
rundeck 修改密码 添加节点
查看>>
IT讲师韩顺平:创业不易,尚硅谷延续教育初心
查看>>
IntelliJ IDEA 插件 阿里巴巴Java开发手册
查看>>
利用nmap对Mongodb Redis未授权访问测试
查看>>
CakePHP
查看>>
我的友情链接
查看>>
编译mysql5.6.27
查看>>
搭建centos6.7网站服务器记录
查看>>
Release版本调用ffmpeg av_register_all程序崩溃
查看>>
Referenced management pack not found
查看>>
jquery中data函数的用法示例
查看>>
巧用strtotime函数计算日期
查看>>
JVM中java对象的生命周期
查看>>