я хочу изменить значок, когда нажмите на tabhostизменения на tabhost андроид
ниже исходный код
private void setTabs() {
addTab("Home", TabHome.class, R.drawable.home);
addTab("Performers", TabPerformers.class, R.drawable.performers);
addTab("Tickets", TabTickets.class, R.drawable.tickets);
addTab("Info", TabInfo.class, R.drawable.info);
}
private void addTab(String labelId, Class<?> c, int drawableId) {
tabHost = getTabHost();
Intent intent = new Intent(this, c);
TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId);
tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false);
icon = (ImageView) tabIndicator.findViewById(R.id.icon);
icon.setImageResource(drawableId);
spec.setIndicator(tabIndicator);
spec.setContent(intent);
tabHost.addTab(spec);
}
я хочу, чтобы изменить значок вкладки, когда пользователь нажимает кнопку вкладки для этого я использовал ниже tabhost событие
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
@Override
public void onTabChanged(String tabId) {
if (tabId.equals("tabHome")) {
, но не смог успешно
есть также tab_indicater.xml файл но от этого только фон будет меняться не значок
ниже код XML
<?xml version="1.0" encoding="utf-8"?>
<!-- Non focused states -->
<item android:drawable="@drawable/tab_unselected" android:state_focused="false" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@drawable/tab_bg_selector" android:state_focused="false" android:state_pressed="false" android:state_selected="true"/>
<!-- Focused states -->
<item android:drawable="@drawable/tab_bg_selector" android:state_focused="true" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@drawable/tab_bg_selector" android:state_focused="true" android:state_pressed="false" android:state_selected="true"/>
<!-- Pressed -->
<item android:drawable="@drawable/tab_bg_selector" android:state_pressed="true" android:state_selected="true"/>
<item android:drawable="@drawable/tab_press" android:state_pressed="true"/>
ниже это снимок экрана
, когда мы нажимаем на любой вкладке, это значок должен быть изменен, как здесь он должен стать оранжевым ..
любого орган может помочь мне ...
, но в этом также как можно различить, что этот значок для этой вкладки и что значок для этой вкладки? –
Простые, используйте разные рисунки для разных вкладок :) – iceman
Спасибо iceman :) Я попробую :) –