У меня есть Tab
, который имеет пользовательский макет, который содержит TextView
.Позже мне нужно будет обновить этот текст из фактического дочернего элемента вкладки.
Вот как я настроил его в TabActivity
private void setupTab(final String tag) {
//Call createTabView() to give the tab a layout with some text
View tabview = createTabView(mTabHost.getContext(), tag);
Intent intent = new Intent().setClass(this, MyActivity.class);
TabSpec setContent = mTabHost.newTabSpec(tag).setIndicator(tabview).setContent(intent);
mTabHost.addTab(setContent);
mTabList.add(setContent);
}
private View createTabView(final Context context, final String text) {
View view = LayoutInflater.from(context).inflate(R.layout.tabs_bg, null);
TextView tv = (TextView) view.findViewById(R.id.tabsText);
tv.setText(text); //we set the text of the tab here.
LinearLayout tvX = (LinearLayout) view.findViewById(R.id.tabsLayout);
return view;
}
Итак, вот как я его настроилТеперь в дочерней вкладке мне нужно обновить текст ... Я думаю, что следующее работало бы, если бы у меня не было пользовательских вкладок ...
((TabActivity)getParent()).getTabHost().setTag(((TabActivity)getParent()).getTabHost().getCurrentTab(), "new text");
Но мне нужны пользовательские вкладки:)
У кого-нибудь есть идеи или предложения?Спасибо