Добрый день!
Как обновить содержимое вкладки в TabHost, кликая по названиям? Я уже отследил клик на вкладку и могу "навесить" событие и определить тег вкладки, но не понимаю, как обновить её содержимое. tabHost.removeViewAt(0) - удаляет вкладку 0, и необходимо снова её создавать и "навешивать" событие, что не совсем правильно. При переключении между вкладками содержимое обновляется, благодаря флагу Intent.FLAG_ACTIVITY_CLEAR_TOP.
Пример кода:
int numberOfTabs = tabHost.getTabWidget().getChildCount();
for(int n=0; n<numberOfTabs; n++) {
tabHost.getTabWidget().getChildAt(n).setOnTouchListener(new View.OnTouchListener() {
@SuppressLint("LongLogTag")
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
String currentSelectedTag = tabHost.getCurrentTabTag();
for(int l=0; l<tabHost.getTabWidget().getChildCount(); l++) {
View f = tabHost.getTabWidget().getChildTabViewAt(l);
TextView tv1 = (TextView) f.findViewById(R.id.textView1);
tv1.setTypeface(Typeface.DEFAULT);
tv1.setTextColor(Color.parseColor("#bdbdbd"));
tv1.setBackgroundResource(android.R.color.transparent);
}
TextView tv = (TextView) v.findViewById(R.id.textView1);
tv.setTypeface(Typeface.DEFAULT_BOLD);
tv.setTextColor(Color.parseColor("#ffffff"));
tv.setBackgroundResource(R.drawable.edittext_bg);
Log.d("@@@@@@@@@@ onClick", "onClick tab "+v.getTag());// v.getTag() - тег вьюхи текущей вкладки
// где-то здесь нужно обновить текущий intent
}
return false;
}
});
}
Уже перерыл весь стак, не могу ничего подобного найти. Какие есть соображения?