1

我有一个选项卡活动,在一个选项卡内我有活动组。最初显示活动 A,从那里我想使用 startactivityforresult 调用活动 B。如何做到这一点?

在我的活动A中,我正在这样做......

        Intent i = new Intent(Entry.this, Child.class);

        // Create the view using FirstGroup's LocalActivityManager  
        View view = GroupActivity.group.getLocalActivityManager()  
        .startActivity("child", i  
        .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))  
        .getDecorView();  

        // Again, replace the view  
        GroupActivity.group.replaceView(view);

虽然这将我带到了活动 B,但我无法从那里返回到活动 A。

4

1 回答 1

0

将 startActivity 更改为:

.startActivityForResult(i, .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));

然后将此方法添加到ActivityA:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // See which child activity is calling us back.
        switch (resultCode) {
           case RESULT_OK:
           {
               //processing code goes here
           }
           default:
                break;
        }
} 

然后在 Activity B 上调用 finish() 时,您应该点击“OnActivityResult”方法。您还可以通过调用将意图发送回主要活动:

setResult(Activity.Result_OK, intent);

关于活动 B。

于 2011-06-21T11:34:07.873 回答