Обнаружение нажатия на уже выбранную кнопку вкладки - PullRequest
0 голосов
/ 12 декабря 2011

Есть ли способ обнаружить, что пользователь нажимает на кнопку вкладки в TabWidget?

Я знаю о OnTabChangeListener, но я хочу обнаружить нажатие на кнопку вкладки, даже если эта вкладка уже была выбрана.

Это необходимо для копирования поведения, стандартного для iOS.Возьмем, к примеру, приложение App Store: выберите вкладку «Категории».Перейдите несколько уровней глубоко в категории.Затем снова нажмите на вкладку «Категории».Это вернет вас на верхний уровень.(как альтернатива многократному нажатию на кнопку «Назад»).Я нахожу это очень интуитивно понятным и, следовательно, применимым к Android.

Этот вопрос задавался ранее: Кнопка Android Tab: обрабатывать событие нажатия / нажатия .Однако принятый ответ здесь бесполезен.

Я пробовал OnClickListener и OnTouchListeners на TabWidget.Но они никогда не срабатывают.

1 Ответ

1 голос
/ 12 декабря 2011

Скрыть виджет вкладок и использовать стандартные кнопки для переключения между вкладками. Вы можете переключать вкладки, используя

tabhost.setCurrentTab('index of the tab');

Вы можете сделать кнопку выбранной, используя нарисованное состояние и установив кнопку как выбранное.

button.setSelected(true);

Ну, чтобы выполнить ваше требование, вы можете поместить соответствующий код в кнопки на прослушивателе Click. Этот проект может дать вам представление о настройке вкладок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...