Wil*_* L. 3 android activity-finish android-activity
好的说你使用了一个应用程序,然后你打开了一个新的活动,然后打开了另一个活动,你可以通过使用finish();和后面的一个活动来结束你的活动,但你怎么能回到两个活动,一直回到第一个活动?我知道你可以使用:
Intent savedGameIntent = new Intent(v.getContext(), firstclass.class);
v.getContext().startActivity(savedGameIntent);
Run Code Online (Sandbox Code Playgroud)
但这是最好的方法吗?
我相信这会开始一项新的活动,而不是回到原来的活动。听起来您想完成最后和中间的活动。如果您使用 startActivityForResult 启动最后一个活动,那么您可以在中间活动中覆盖 onActivityResult,并从那里调用 finish()。
使用标志Intent.FLAG_ACTIVITY_CLEAR_TOP.
Intent intent = new Intent(this,A.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
从文档:
如果已设置,并且正在启动的活动已在当前任务中运行,则不会启动该活动的新实例,而是将关闭其上的所有其他活动,并将此Intent传递给(现在开启) top)旧活动作为新的意图.
如此有效,如果您有A - > B - > C,并且您打算使用该标志设置A,则B和C将关闭.
| 归档时间: |
|
| 查看次数: |
4064 次 |
| 最近记录: |