что на самом деле делает ImageSwitcher? - PullRequest
6 голосов
/ 19 июня 2011

Я пытаюсь поймать свои приложения для Android и вижу, что ImageSwitcher часто используется для всех видов анимационных задач, но документы Google полностью спартанские и не описывают ничего, кроме методов, которые в класс. Между тем все примеры используют галерею и не объясняют почему.

Кто-нибудь имеет ссылку (или хочет объяснить) какую-либо информацию о том, что на самом деле делает класс и как он предназначен для использования?

1 Ответ

7 голосов
/ 19 июня 2011

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

ViewAnimator ...

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

ViewSwitcher

ViewAnimator, который переключается между двумя представлениями и имеет фабрику, из которой создаются эти представления. Вы можете использовать фабрику для создания представлений или добавить их самостоятельно. ViewSwitcher может иметь только два дочерних представления, из которых одновременно отображается только одно.

Затем смотрим на другой прямой подкласс ViewSwitcher ...

TextSwitcher

Специализированный ViewSwitcher, который содержит только потомки типа TextView. TextSwitcher полезен для анимации метки на экране. При каждом вызове setText (CharSequence) TextSwitcher анимирует текущий текст и вводит новый текст.

Таким образом, для чтения между строк ImageSwitcher - это ViewAnimator, который оптимизирован для изображений (то есть для рисования), и, поскольку он наследуется непосредственно от ViewSwitcher, он может иметь только два изображения.

Итак, перефразируя обзор TextSwitcher, я бы сказал, что ...

Всякий раз, когда вызывается <insert setImageXXX method here>, ImageSwitcher анимирует текущее изображение и вводит новое изображение.

Как я уже сказал, это просто "лучшая догадка".

...