2

我有 2 个活动,第一个细节活动,第二个活动页面是确认页面,一旦我确认它应该回到第一页,我应该如何处理这种情况?

是否可以在活动之间,而不是使用片段?

4

4 回答 4

6

你必须使用 startActivityForResult(); 启动 secondActivity 时的方法。

而且您还必须实现 onActivityResult() 方法。

这是第一个活动的代码..

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == 1) {
        Bundle extra = data.getExtras();
        String ID = extra.getString("NameKey").trim();
         // do your code here.

    }
}

第二个活动中的代码..

在确认单击按钮上添加代码。

    Intent i = new Intent();
    Bundle extra = new Bundle();
    extra.putString("NameKey", KeyValue);

    i.putExtras(extra);
    setResult(1, i);
    finish();  
于 2013-08-01T05:53:15.057 回答
3

这可能会帮助你

这个是FirstActivity

Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, 1);

例如:如果要发回数据,则为 secondActivity

 Intent returnIntent = new Intent();
 returnIntent.putExtra("result",result);
 setResult(RESULT_OK,returnIntent);     
 finish();
于 2013-08-01T05:49:01.970 回答
2

启动结果的确认页面startActivityForResult(intent, requestCode)

这是一个完整的例子(http://www.vogella.com/articles/AndroidIntent/#usingintents_sub

于 2013-08-01T05:44:44.860 回答
1

我相信调用 finish() 是退出活动的最简单方法。它应该返回到前一个,类似于点击后退按钮。

编辑:虽然,正如 Sirlate 提到的,如果你想返回数据, startActivityForResult 可能是你最好的选择。

于 2013-08-01T05:45:03.230 回答