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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • slam技术研究现状_SLAM uav

    slam技术研究现状_SLAM uav导语:被很多学者认为是实现真正全自主移动机器人关键的SLAM技术,已经开始逐步走入人们的视野,过去几年扫地机器人的盛行让它名声大燥,而AGV、无人机等行业的兴起则让其找到了更加广阔的市场。今天,我们就来聊一聊现下大热的SLAM技术。被很多学者认为是实现真正全自主移动机器人关键的SLAM技术,已经开始逐步走入人们的视野,过去几年扫地机器人的盛行让它名声大燥,而AGV、无人机等行业的…

    2022年10月1日
    2
  • 学习web前端,初学者应该用什么编程软件

    学习web前端,初学者应该用什么编程软件Web前端开发最常见的编程软件有以下几种: DreamWeaver是一款老牌前端开发工具,功能强大且组件丰富,作为前端开发的一款利器被广泛使用。DreamWeaver是一款可视化的前端开发工具,一边写代码一边就能看到效果,所以使用起来还是比较方便的。但是DreamWeaver的缺点就是比较耗费系统资源,这也许是IDE类产品的通病。 Hbuilder是最近几年被广泛使用的一款前端开发…

    2022年5月23日
    52
  • spring boot vue跨域_vue怎么解决跨域问题

    spring boot vue跨域_vue怎么解决跨域问题一、什么是跨域在springboot+vue前后端分离项目中,请求资源的端口号,域名(ip地址)不同。二、跨域的解决方案1、springboot后端处理:在每个controller上加上@CrossOrigin注解或在controller的基类上添加@CrossOrigin注解,其他controller类加上@Controller即可。2、在vue前端进行处理:通过代理的方式访问后端接口。…

    2022年9月17日
    2
  • QT QTcpSocket「建议收藏」

    QT QTcpSocket「建议收藏」QTcpSocket类提供TCP套接字。TCP(传输控制协议)是一种可靠的、面向流的、面向连接的传输协议。它特别适合于数据的连续传输。QTcpSocket是QAbstractSocket的一个方便的子类,它允许您建立TCP连接和传输数据流。有关详细信息,请参见QAbstractSocket文档。注意:TCP套接字不能在QIODevice::Unbuffered模式下打开。请参见QTcpServer、QUdpSocket、QNetworkAccessManager、Fortune服务器示例、Fortu

    2025年10月17日
    3
  • 决策树算法的应用python实现_python怎么画出决策树的分支

    决策树算法的应用python实现_python怎么画出决策树的分支决策数(DecisionTree)在机器学习中也是比较常见的一种算法,属于监督学习中的一种。看字面意思应该也比较容易理解,相比其他算法比如支持向量机(SVM)或神经网络,似乎决策树感觉“亲切”许多。优点:计算复杂度不高,输出结果易于理解,对中间值的缺失值不敏感,可以处理不相关特征数据。缺点:可能会产生过度匹配的问题。使用数据类型:数值型和标称型。简单介绍完毕,让我们来通过一个例子让决策树“

    2025年10月8日
    3
  • hive lateral view 与 explode详解[通俗易懂]

    hive lateral view 与 explode详解[通俗易懂]1.explodehivewiki对于expolde的解释如下:explode()takesinanarray(oramap)asaninputandoutputstheelementsofthearray(map)asseparaterows.UDTFscanbeusedintheSELECTexpressionlistandas

    2022年9月21日
    1

发表回复

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

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