次のコードを使用して、タブ内の ActivityGroup から新しいタブでアクティビティを起動しています。
TabHost mTabHost = TabsFragment.getTabHost();
mTabHost.setCurrentTab(2);
Intent i = new Intent(Downloader.this,Test.class);
replaceContentView(Test.class.getName(),i);
public void replaceContentView(String id, Intent newIntent) {
View view = getLocalActivityManager().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
this.setContentView(view);}
このコードでは、新しいタブに切り替えることができますが、Test アクティビティの oncreate() を呼び出す前に、現在の ActivityGroup の oncreate() が呼び出されているという問題があります。その後、Test.class の oncreate() が呼び出されますが (ログで確認)、Test アクティビティではなく、新しいタブに Downloader アクティビティが引き続き表示されます。
上記の理由を見つけることができなかったのに、なぜこれが起こるのですか?
同じ問題を解決するための助けをいただければ幸いです。