в моем андроид приложение, я установить вкладку макета, как это:андроид отключить 2 из 3 вкладок
final TabLayout tabLayout = (TabLayout) findViewById(R.id.tab_layout);
tabLayout.addTab(tabLayout.newTab().setText("TAB 1"));
tabLayout.addTab(tabLayout.newTab().setText("TAB 2"));
tabLayout.addTab(tabLayout.newTab().setText("TAB 3"));
я хотел бы отключить вкладку 2 и 3. Вкладка я попробовать это, и она работает:
tabLayout.getChildAt(1).setEnabled(false);
tabLayout.getChildAt(2).setEnabled(false);
, но я также хотел бы установить обратную связь тост, если кто-то нажмите на вкладке отключить, как «Эта вкладка не разблокирован»
для этого я пытаюсь установить onclicklistener на вкладке 2 и 3. , но этот прослушиватель не работает, если я отключил вкладку с кодом раньше.
есть кто-нибудь идея, как я могу решить эту проблему?
UPDATE
@Override
public void onTabSelected(TabLayout.Tab tab) {
if (tab.getPosition() == 1) {
viewPager.setCurrentItem(0);
TabLayout.Tab tab1 = tabLayout.getTabAt(0);
tab1.select();
} else {
viewPager.setCurrentItem(tab.getPosition());
}
}
Вы не можете получить событие щелчка, когда View отключен. Вместо этого попробуйте использовать TouchListener. [Здесь] (http://stackoverflow.com/a/17836095/4224337) вы можете найти пример, как обнаружить событие click в TouchListener. – Rami
http://stackoverflow.com/questions/4497187/how-to-disable-a-tab-in-android-screen –
Я пробую теперь по-другому. посмотрите часть обновления моего первого сообщения. я отлично работаю. но проблема в том, что я должен установить индикатор вкладки обратно на вкладку 1. Есть ли способ? – SpecialFighter