Как установить слушателя onclick внутри Viewflipper - PullRequest
1 голос
/ 10 декабря 2010

Есть ли в любом случае установить onlickListener внутри флиппера.В моем приложении есть мастер вопросов с кнопками «Далее», «Предыдущий» и «Готово».Я использовал ViewFlipper, чтобы пролистать все вопросы.Имеется текстовое представление и 4 радиокнопки, обернутые внутри радиогруппы для каждого вида в флиппере.Я хочу, чтобы значение RadioButton было выбрано, когда пользователи нажимают кнопку «Готово».Я планировал вызывать функцию для сохранения значения в массиве каждый раз, когда нажата радиокнопка, и получать массив при нажатии кнопки «Готово».Есть ли какие-либо предложения, как это установить!

Мастер моего вопроса будет выглядеть так:

alt text

1 Ответ

6 голосов
/ 10 декабря 2010

Имея риск поощрения преждевременной оптимизации, я решил проблему, очень похожую на эту (перелистывание набора потенциально десятков более или менее идентичных страниц), которая оказалась довольно приятной и которая могла бы решить вашу проблему, хотя и немного косвенно,

Основой моей техники было создание ViewFlipper, содержащего одну дочернюю страницу.Когда пользователь нажимает «предыдущий» или «следующий», происходит следующее:

  • Создание специального представления, которое «клонирует» изображение реального дочернего представления ViewFlipper.
  • Добавитьклон View для ViewFlipper и установите его в качестве текущего дочернего элемента без какой-либо анимации.Пока что пользовательский интерфейс выглядит так, как будто ничего не изменилось.
  • Обновите реальное дочернее представление (теперь скрытое клоном) текстом и изображениями и т. Д. Для переворачиваемой страницы.
  • УстановитеТекущая страница ViewFlipper возвращается к реальному дочернему виду, на этот раз с хорошей анимацией.

Мне нужно было пройти лишнюю милю, потому что моя страница была очень сложной ... несколько списков, все виды кнопок,изображения и т. д. Было бы ужасно расточительно иметь 2 или 3 из них в моей иерархии представлений, не говоря уже о десятках.Описанная выше техника минимизирует сложность макета, и анимация перелистывания работает намного быстрее, если страница сложная.

...