0

所以现在我的主要活动有几个按钮(一个是“关于”)。我处理更改屏幕以显示有关信息的方式是添加一个 onClickListener:

Intent myIntent = new Intent(v.getContext(), About.class);
startActivityForResult(myIntent, 0);

About.java 然后将内容视图设置为包含后退按钮的不同布局。后退按钮的处理方式与所描述的相同,并返回到主要活动。

不过我注意到的是,当我运行应用程序并单击“关于”,然后单击“返回”时,它将运行 2 个主要活动和 1 个关于活动。那么有没有更好的方法来处理这样的菜单,或者我可以在 Intent 代码中添加一些内容以使其在继续下一个之前关闭当前活动?

编辑:哦,哇,谢谢家伙,我什至没有想到这一点。我现在有点睡眠不足。

4

2 回答 2

1

您不应该启动一项新活动来返回之前的活动。finish();当您单击后退按钮返回到 backstack 上的上一个活动时,您只需调用您的 about 活动。

或者,您可以按照“Android 方式”进行操作,而不是放入后退按钮,不用担心调用finish(),只允许用户按下手机上的后退按钮(所有 Android 手机都有)返回到上一个活动.

于 2013-02-27T22:08:25.563 回答
0

您可以调用finish()MainActivity然后MainActivity从类Intent内部创建一个新的About。但一个更好的方法可能是不是finish()你的MainActivity,只是finish()你的关于类。这将带您进入您MainActivity已经运行过的上一个。此外,如果您愿意,这将允许您About从其他活动中调用并返回到您调用它的任何位置

于 2013-02-27T22:10:08.320 回答