android activity自动跳转,Android activity跳转之finish()方法的作用

android activity自动跳转,Android activity跳转之finish()方法的作用最近在看郭神的《第一行代码(第2版)》,温故知新,看到有很多地方在页面跳转后还加了一句:finish();,原来像下面代码这样用Intent从Aactivity跳到Bactivity:Intentintent=newIntent(A.this,B.class);startActivity(intent);当成功跳到Bactivity的时候再点击返回键,就再次返回到了…

大家好,又见面了,我是你们的朋友全栈君。

最近在看郭神的《第一行代码(第2版)》,温故知新,看到有很多地方在页面跳转后还加了一句:finish();,原来像下面代码这样用 Intent 从 A activity 跳到 B activity :

Intent intent = new Intent(A.this, B.class);

startActivity(intent);

当成功跳到 B activity 的时候再点击返回键,就再次返回到了 A activity 页面中。

而在跳转逻辑完成后加一句finish();:

Intent intent = new Intent(A.this, B.class);

startActivity(intent);

finish();

这样,当从 A activity 跳转到 B activity 的时候,再点击返回键,B activity 会跳转到 A activity 之前的那个 activity,而不会返回到 A activity (如果 A activity是主界面, 即 A activity 之前没有 activity,那么会直接返回到手机主界面)。

页面跳转时finish()方法应用的业务场景:

场景1:在很多APP中,首次进入APP时需要登录才能进入到APP首页,但成功登录跳转到APP的首页后,再按返回键,应该直接返回到手机主界面而不是登录界面。

场景2:在订单列表中,A activity 中点击新建订单进入新建订单 B activity 中,点击保存后,跳转到订单详情 C activity 中(在 B activity 的跳转到 C activity 时加入finish()方法),在 C activity 中点击返回键就可以直接返回到 A activity 中。

结论:跳转后在按返回键时,不需要返回到原 activity 就可以使用finish()方法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145178.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【Android Tricks 6】ViewPager首页与尾页的滑动动作响应[通俗易懂]

    【Android Tricks 6】ViewPager首页与尾页的滑动动作响应

    2022年1月28日
    46
  • 实时数据库与时序数据库区别_时间序列数据库

    实时数据库与时序数据库区别_时间序列数据库1、概述在工业大数据数据库存储领域,除了传统的关系型数据库和分布式数据库以外,还有一种类型的数据库是非常常用,而且是非常有必要的,就是实时数据库,以及时序数据库。但是,大家可能会有疑问,都是专门处理时序数据的,这是两种数据库吗?他们之间有什么联系?1.1发展历史实时数据库是数据库系统的一个分支,它适用于处理不断更新的快速变化的数据及具有时间限制的事务处理。实时数据库技术是实时系统和数据库技术相结合的产物。实时数据库最起初是基于先进控制和优化控制而出现的,对数据的实时性要求比较高,因而实时、高效

    2022年10月5日
    2
  • Nginx出现403 forbidden

    Nginx出现403 forbiddennginx访问时报403,于是查看nginx日志,路径为/var/log/nginx/error.log。打开日志发现报错Permissiondenied,详细报错如下:1.open()"/data/www/1.txt"failed(13:Permissiondenied),client:192.168.1.194,server:www.web1.com,re…

    2022年6月11日
    158
  • golang嵌入式开发_持续集成平台对比

    golang嵌入式开发_持续集成平台对比Drone官方示例-ExampleGoproject用Docker部署Go服务器Golang官方示例-outyet一个生产环境的例子实际的DevOps项目中,在pipeline流水线中包含下载代码、测试、构建、发布、部署、通知等步骤。基本流程如下,当然不同的语言或不同的需求下流程会有所差异:clone->test->build…

    2022年8月15日
    4
  • bs架构与cs架构的区别详细讲解_数据库为什么cs架构

    bs架构与cs架构的区别详细讲解_数据库为什么cs架构C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。早期的软件系统多以此作为首选设计标准。 B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户

    2025年6月24日
    5
  • 【综合评价方法 变异系数权重法】指标权重确定方法之变异系数权重法

    【综合评价方法 变异系数权重法】指标权重确定方法之变异系数权重法变异系数法是直接利用各项指标所包含的信息,通过计算得到指标的权重。是一种客观赋权的方法。此方法的基本做法是:在评价指标体系中,指标取值差异越大的指标,也就是越难以实现的指标,这样的指标更难反映被评价单位的差距。由于评价指标体系中的各项指标的量纲不同,不宜直接比较其差别程度。为了消除各项评价指标的量纲不同的影响,需要用各项指标的变异系数来衡量各项指标取值的差异程度。各项指标的变异系数公式如下:…

    2022年5月3日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号