呼び出されなかったchildActivityで記述されたonActivityResult()メソッド
私のTabGrpActivityはActivityGroupを拡張します。
public class TabGroupActivity extends ActivityGroup
{プライベートArrayListmIdList;
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
if(mIdList==null)
mIdList = new ArrayList<String>();
obj = new ScheduleView();
startChildActivity("Activity1", new Intent(this,Activity1.class));
}
public void startChildActivity(String Id,Intent intent)
{
Window window = getLocalActivityManager().startActivity(Id,
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
if(window!=null)
{
mIdList.add(Id);
setContentView(window.getDecorView());
}
}
私のActivity1(子アクティビティ)では、startActivityForresult()を使用して別のアクティビティを呼び出します。コードを以下に示します。
mybund.putString("event", obj_rowitem.getevent());
Intent schedule = new Intent(getApplicationContext(), Activity2.class);
schedule.putExtras(mybund);
startActivityForResult(schedule, req_code);
また、Activity1にonActivityResultメソッドを記述しました。コードは次のとおりです。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
year = data.getExtras().getInt("year");
month=data.getExtras().getInt("month");
date=data.getExtras().getInt("date");
String getdate=year+"-"+month+"-"+date;
readschedules(getdate);
rowitems=getdata(getdate);
listview.setAdapter(new CustomView(getApplicationContext(), rowitems));
}
1つは、Activity2を子アクティビティではなく単純なアクティビティと呼んでいることです。
ここで問題があります...コントロールが移動するActivity2でsetResult()を呼び出した後...。
私はライフサイクルActivityGroupを理解していませんでした。