返回主屏幕然后返回上一个活动

时间:2011-08-11 12:15:45

标签: android

有真正的问题了解如何解决我的问题。

在主屏幕上,我有2个按钮

当用户点击第一个按钮时,它会启动一个新的Activity。我要找的是如果用户点击后面的应用程序返回到主屏幕。如果用户再次单击第一个按钮,则会启动新活动。

如果用户单击第二个按钮,则会通过单击按钮1

返回上次启动的活动

我遇到的问题是如何在用户点击时保存活动状态 还有如何在按下第二个按钮时调用该活动

感谢你的时间

更新

我已经失去了部分但仍然有问题。如果我放了一些我正在使用的代码,也许有人可以指出我出错的地方。

从主菜单调用新活动的代码

Intent intent = new Intent(MainMenu.this, NewClass.class);
        intent.putExtra("value1", value1);  
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);

在新课程中,我添加了以下内容:

    @Override
public void onBackPressed() {
    //super.onBackPressed();
    Intent intent = new Intent(RoundScoring.this, MainMenu.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    startActivity(intent);
    Toast.makeText(this, "Back Button Pressed", Toast.LENGTH_LONG).show();
}

我在本课程中没有onrestoreinstancestate或onresumne。只是一个创造。我是否必须添加这样的内容才能恢复实例

在主菜单上的第二个按钮上,我添加了

Intent intentContiune = new Intent(MainMenu.this, NewClass.class);
            intentContiune.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
            startActivity(intentContiune);

由于

2 个答案:

答案 0 :(得分:1)

试试这个:

主屏左键: 使用意图标志FLAG_ACTIVITY_NEW_TASK

打开新活动

活性: 在已启动的活动上覆盖onBackClick()以使用Intent调用主屏幕而不是完成它。使用标志FLAG_ACTIVITY_REORDER_TO_FRONT 保存活动状态覆盖OnSaveInstanceState

主屏右键: 使用标志FLAG_ACTIVITY_SINGLE_TOP

调用活动

有关旗帜的更多信息: http://blog.akquinet.de/2010/04/15/android-activites-and-tasks-series-intent-flags/

答案 1 :(得分:0)

一种解决方案可能涉及传递包括您的活动状态的包。使用startActivityForResult(),您可以返回包含活动状态的包。当用户单击您的第二个按钮时,传入该捆绑包并让活动根据捆绑包的内容自行设置。如果捆绑包中不包含您要查找的信息,请使用默认值,就像刚刚启动它一样。

了解更多信息:

Android: Capturing the return of an activity