有人能给我解释一下finish()
和finishActivity(int requestCode)
的区别吗?以及在哪里恰当地使用它们的情况。
提前谢谢。
发布于 2011-08-19 14:26:14
当您的活动完成并且应该关闭时,finish()
调用此方法。通过onActivityResult()将ActivityResult传播回启动您的用户。
finishActivity(int requestCode)
用于完成您之前使用startActivityForResult(Intent,int)启动的另一个活动
发布于 2011-08-19 17:00:25
当您的活动完成并且应该关闭时,finish()
调用此方法。无论是谁通过onActivityResult()
启动了你,ActivityResult
都会传回。
finishActivity(int requestCode)
强制完成您之前使用startActivityForResult(Intent, int)
启动的另一个活动。
requestCode
您已经提供给startActivityForResult()
的活动的请求代码。如果此请求代码启动了多个活动,则这些活动都将完成。
发布于 2011-08-19 14:27:29
所以基本上你可以通过Android中的Intent从另一个活动中调用Android中的其他活动。当您调用startActivityForResult时,您正在调用另一个活动,希望应用程序状态中的代码/更改的结果会发生。例如,我运行我的主Activity,但是我调用了另一个Activity,它将应用程序中的各种字段/变量设置为特定值(即用户设置应用程序的设置)。然后,当该活动完成并且您必须返回到调用它的活动时,您可以调用finishActivity发送一个requestCode,该way将标记所调用的活动是否以您希望的方式执行。
https://stackoverflow.com/questions/7117690
复制相似问题