Update tabs from a tab's activity in a Android TabHost

一个人想着一个人 提交于 2019-11-26 17:17:07

问题


I have a TabActivity and am going to have 3 or 4 tabs.

In TabA, I would like to have an ExpandableListView, which will list products. I would like TabC to act as a sort of "shopping cart", probably with a ListView of itself.

Is there a way to interact with the TabHost from the Activity? I would like to be able to click a button inside of TabA and have it update and switch to TabC. Is this possible? Can I get the Tab's activities call its parents methods?


回答1:


If you implement your tabs as views, rather than individual activities, this would be far simpler, run faster, take up less memory, and be a better solution IMHO.

That being said, in the Tab A Activity, call getParent() to get at the TabActivity. Then, you can use the methods pointed out by disretrospect.




回答2:


Try to use this code to change activity within a tab:

TabActivity parent = (TabActivity) getParent();
TabHost tabhost = parent.getTabHost();
tabhost.setCurrentTab(0);



回答3:


You can call getTabHost from a TabActivity, see public TabHost getTabHost().

See Tabhost for setCurrentTab, public void setCurrentTab(int index).




回答4:


  1. In your Activity, use getParent() to get the TabActivity parent
  2. In your TabActivity class, use getLocalActivityManager().getActivity(tabId) to get the Activity object
  3. call the Activity object's method


来源:https://stackoverflow.com/questions/2945274/update-tabs-from-a-tabs-activity-in-a-android-tabhost

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!