9

TabActivityがあり、3つまたは4つのタブがあります。

TabAには、商品を一覧表示するExpandableListViewが必要です。TabCを、おそらくそれ自体のListViewを使用して、一種の「ショッピングカート」として機能させたいと思います。

アクティビティからTabHostと対話する方法はありますか?TabA内のボタンをクリックして更新し、TabCに切り替えられるようにしたいと思います。これは可能ですか?タブのアクティビティで親メソッドを呼び出すことはできますか?

4

4 に答える 4

16

タブを個々のアクティビティではなくビューとして実装すると、はるかに簡単になり、実行が速くなり、メモリの消費量が少なくなり、IMHO としてより優れたソリューションになります。

そうは言っても、タブ AActivityで、 を呼び出しgetParent()て を取得しますTabActivity。次に、disretrospect によって指摘された方法を使用できます。

于 2010-05-31T19:44:39.313 に答える
3

このコードを使用して、タブ内のアクティビティを変更してみてください:

TabActivity parent = (TabActivity) getParent();
TabHost tabhost = parent.getTabHost();
tabhost.setCurrentTab(0);
于 2012-07-17T01:06:30.450 に答える
1
  1. アクティビティで、getParent() を使用して TabActivity の親を取得します
  2. TabActivity クラスで、getLocalActivityManager().getActivity(tabId) を使用して Activity オブジェクトを取得します。
  3. Activity オブジェクトのメソッドを呼び出す
于 2012-05-28T09:42:31.543 に答える
1

TabActivity から getTabHost を呼び出すことができます。 public TabHost getTabHost()を参照してください。

setCurrentTab、 public void setCurrentTab(int index)については Tabhost を参照してください。

于 2010-05-31T19:42:38.303 に答える