如何在tabwidget内的活动组内将startactivityforresult从一个活动调用到另一个活动

时间:2011-06-21 11:05:34

标签: android android-activity activitygroup

我有一个标签活动,在一个标签内我有活动组。最初显示活动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.

1 个答案:

答案 0 :(得分: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。