2011-06-21 1 views
1

У меня есть активность вкладок, и внутри одной вкладки у меня есть группа активности. Сначала отображается активность A, и оттуда я хочу вызвать активность B, используя startactivityforresult. Как достичь этого?Как вызвать startactivityforresult из одного действия в другое в пределах группы действий внутри tabwidget

в моей деятельности А, я это делаю ...

 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, нет никакого способа для меня, чтобы вернуться к активности А оттуда.

ответ

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; 
     } 
} 

, а затем, когда отделка() вызывается активность B, вы должны ударить метод «OnActivityResult». Вы также можете отправить намерение вернуться к основной деятельности по телефону:

setResult(Activity.Result_OK, intent); 

на активность B.

+1

LocalActivityManager не метод startActivityForResult. – jwadsack