【发布时间】:2015-03-24 13:36:19
【问题描述】:
调用finish()更好吗?在调用意图导航到另一个活动之前,或者只是调用意图。还要注意如果使用向上导航哪种方式更好
谢谢
【问题讨论】:
标签: android android-intent android-activity android-manifest
调用finish()更好吗?在调用意图导航到另一个活动之前,或者只是调用意图。还要注意如果使用向上导航哪种方式更好
谢谢
【问题讨论】:
标签: android android-intent android-activity android-manifest
当你需要关闭当前的Activity并启动新的Activity时你需要调用finish()。
但每当您不需要关闭当前活动并开始新活动时。那么你就不需要调用finish()了。
当您不致电 finish() 时。您可以从新 Activity 访问相同的 Activity。
我不认为一个更好,另一个不是。我们可以根据需要同时使用两者。
注意:如果你不调用finish(),那么你不需要再次创建Activity。从新活动回来。所以它更快。
【讨论】:
一切都取决于您想要的用户体验。默认情况下,Activitys 按照用户导航它们的顺序留在后台。所以当他回击时,他又回到了之前的Activity。如果他按下 HOME 按钮并稍后再次重新启动应用程序,应用程序将以他上次中断的相同 Activity 开始。为每个Activity 调用finish() 将颠覆这种行为。
您可以通过多种方式自定义后台堆栈和历史记录行为。看看以下链接:
1. Activity tags in App Manifest。 (launchMode 在这里特别有趣)。
【讨论】:
Amsheer的回答要好:)
还要注意如果使用向上导航哪种方式更好
虽然 Amsheer 的答案很好,但我想补充一下您的上述陈述,那就是肯定的。如果您使用向上导航,从用户体验的角度来看,它会更方便。您可以设置导航抽屉并从一个片段移动到另一个片段,这看起来比从一个活动到另一个活动更好。
请记住,我说的是用户视角,我并不是说从一项活动转移到另一项活动是不好的。但是使用导航抽屉从一个片段导航到另一个片段看起来很棒。
【讨论】: