サンプルアプリケーションには、アクティビティグループのある3つのタブがあります。最初のタブには検索アクティビティ(ホーム/ルートアクティビティ)が含まれており、同じタブ(タブ1)の下にある別のアクティビティで検索結果が表示されています。結果アクティビティで戻るボタンを押すと、アクティビティを検索します。ここまではすべて正常に動作します。戻るボタンを押す代わりに、tab1を押して検索アクティビティを実行したいと思います。どうすればこれを達成できますか?私はこのようなことを試みました
public class TabSample extends TabActivity {
public TabHost tabHost;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("OPT")
.setContent(new Intent(this, TabGroup1Activity.class)));
tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("EDIT")
.setContent(new Intent(this, TabGroup2Activity.class)));
tabHost.setCurrentTab(1);
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
public void onTabChanged(String arg0) {
if (tabHost.getCurrentTabTag().equals("tab1")) {
//What should I do to display search activity here
} else {
tabHost.setCurrentTab(1);
}
}
});
tabHost.setFocusable(true);
tabHost.requestFocus();
}
}
タブが押されたときに検索アクティビティを呼び出す方法を教えてもらえますか?一部の場合はどうなりますか?tabHost.setCurrentTab(index)を使用すると、結果アクティビティは表示されますが、検索アクティビティは表示されないためです。
注:私はこのリンクにあるチュートリアルに従いました。