2010-10-01 18 views
1

我想用訪問由TabActivity運行活動的公共方法:如何訪問活動的一個方法中TabActivity

TabHost tabHost = getTabHost(); 
Intent intentMsgsView = new Intent().setClass(this, TeamHuddleScreenMsgsView.class); 
tabHost.addTab(tabHost.newTabSpec("msgs").setIndicator("Messages").setContent(intentMsgsView)); 

基本上,我是什麼讓父活動呼叫方法在兒童活動中爲了做某事。這可能嗎?

我也試試這個:

((TeamHuddleScreenMsgsView)getTabHost().getCurrentTabView().getContext()).refreshModel(); 

但我遇到一個ClassCastException。它似乎的getContext()仍給出了TabActivity。有關如何獲得孩子活動的任何幫助?

謝謝。

回答

7

聽聽CommonsWare說,在這裏,我已經走了這條路線,這是一個可怕的錯誤,但這裏是你怎麼做。

((SportsActivity)getLocalActivityManager().getCurrentActivity()).setLayout(R.layout.helpview); 

這裏setLayout是我在SportsActivity

+1

真棒作出了公開的方法!有效!我同意,似乎使用視圖而不是活動會更好。多謝你們! – firnnauriel 2010-10-04 10:52:01

2

這將是更簡單,如果你不會把活動於您的標籤,只是把意見在你的標籤,因爲這將意味着只有一個活動。 Here is a sample project顯示如何做到這一點。

ActivityGroup(父類TabActivity)上有getActivity()方法,它沒有記錄,但可能是你想要的。

相關問題