1

2 つのタブ ビューで tabwidget を使用しているアプリを開発しています。アプリが画面に表示されている場合、最初のタブで、データベースから取得したリストビューにデータを表示する必要があります。デフォルトでリストビューのデータが空の場合、2 番目のタブを表示する必要があります。 リストが空の場合にアクティビティを開始すると、他のタブを開始したい。リストが空でない場合は、現在のタブを表示する必要があります。 下の画像は、私の質問に関する詳細情報を示しています。

リスト ビューが空の最初のタブ

2 番目のタブ

上記の画像のように、アプリが初めてユーザーに表示されるとき、データは空になります。ということで、AddGroupタブを表示してグループを追加したいと思います。[グループ] タブでリストが空の場合、[グループの追加] タブに集中するにはどうすればよいですか?

4

1 に答える 1

3

現在表示されているタブを設定するには、

myTabHost.setCurrentTab(tabPos);

この TabHost オブジェクトに到達する方法は、リストを初期化する場所によって異なります。親アクティビティ (TabActivity を拡張する) で行われる場合は、次を使用できます。

getTabHost().setCurrentTab(tabPos);

別のアクティビティ内 (つまり、タブがアクティビティの場合) または View の実装 (ListView 内) から TabHost にアクセスする必要がある場合は、その中のクラスから呼び出すことができるメソッドを親 Activity に追加するか、それへの参照。これを入れて

public void switchTab(int tabPos){
    getTabHost().setCurrentTab(tabPos);
}

親アクティビティで、フォームの何かを使用します

((MyParentTabActivity) MyChildTabActivity.this.getParent()).switchTab(1);

切り替える場所に応じて、アクセスします。

于 2012-08-26T06:50:11.643 に答える