我有一个TabActivity
,其中有两个标签,标签可能会在将来增加。所以我需要根据情况从其中任何人更改MyTabActivity
的标题,以便从所有标签。
public class MyTabActivity extends TabActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
tabContext = this;
setTitle("My App Name");
final TabHost tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec(TAB_1).setIndicator(TAB_1, getResources().getDrawable(R.drawable.tab1)).setContent(new Intent(this, first.class)));
tabHost.addTab(tabHost.newTabSpec(TAB_2).setIndicator(TAB_2, getResources().getDrawable(R.drawable.tab2)).setContent(new Intent(this, second.class)));
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
public void onTabChanged(String tabId) {
setTabTitle();
}
});
tabHost.setCurrentTabByTag(TAB_1);
}
}
我写了setTabTitle()
函数来设置我的tabActivity
标题。
public void setTabTitle()
{
PrefManager prefManager = new PrefManager(getApplicationContext());
String tabtitle = prefManager.getTitle();
tabContext.setTitle("My App Name" + " " + tabtitle);
}
我想在这两项活动中获取一些数据时,从TAB_1( ListActivity )或TAB_2(活动)更改MyTabActivity
的标题。但是当我更改标签时,只有标题被更改,因为我在(setOnTabChangedListener
)中调用了它。但是我想在我的任何一个活动中获取一些数据并且调用此{ {1}}功能。
我已经尝试了两件事。将setTabTitle
设为静态,并将其作为setTabTitle()
从两个活动中调用,但它不起作用。
MyTabActivity.setTabTitle("My Title")
其他是本论坛成员的建议
public static void setTabTitle(String title)
{
tabContext.setTitle("My App Name" + " " + title);
}
但这两个都没有用。我需要在活动中做一些REFRESH吗?
帮我解决这个问题。
由于