任何人都可以向我解释finish()
和finishActivity(int requestCode)
之间的区别。以及适当使用它们的情况。
提前致谢。
答案 0 :(得分:16)
finish()
在您的活动完成后调用此选项并应关闭。 ActivityResult会传播回通过onActivityResult()启动你的人。
finishActivity(int requestCode)
用于完成您之前使用startActivityForResult(Intent,int)启动的另一项活动
答案 1 :(得分:11)
阅读以下内容:
public void finish()
在您的活动完成后调用此选项并应关闭。该 ActivityResult会传播回通过你发送给你的人 onActivityResult()。
public void finishActivity(int requestCode)
强制完成您之前开始的另一项活动 startActivityForResult(Intent,int)。
如需进一步阅读,请查看documentation。
答案 2 :(得分:2)
finish()
在您的活动完成后调用此选项并应关闭。 ActivityResult
会传播回通过onActivityResult()
向您发送的任何人。
finishActivity(int requestCode)
强制完成您之前使用startActivityForResult(Intent, int)
开始的另一项活动。
requestCode
您向startActivityForResult()
提供的活动的请求代码。如果此请求代码启动了多个活动,则它们都将完成。
答案 3 :(得分:1)
所以基本上你可以通过Android中的Intent从另一个Activity调用Android中的其他活动。当您致电startActivityForResult时,您正在调用另一个活动,希望您的应用状态中的代码/更改结果会发生。例如,我运行我的主要活动,但是我调用另一个活动,它将应用程序中的各种字段/变量设置为某些值(即用户设置应用程序的设置)。然后,当该Activity完成并且您必须返回调用它的Activity时,您可以调用finishActivity来发送requestCode,该requestCode将标记所调用的Activity是否以您希望的方式执行。