2010-08-22 8 views
81

Ambos heredan ViewAnimator. Sé que ViewSwitcher permite solo dos vistas, mientras que ViewFlipper permite más. ¿Pero por qué Android creó ViewSwitcher, si es solo un ViewFlipper con 2 vistas? ¿Hay otras diferencias? ¿En qué condición usará el uno superior al otro?Cuál es la diferencia entre ViewFlipper y ViewSwitcher

Respuesta

76

Por lo que puedo decir, ViewSwitcher se utiliza si desea cambiar entre dos vistas como usted dijo. Útil si tienes 2 vistas, tienes que ir y venir bastante regularmente. Y la clase implementa un ViewFactory si desea usarlo.

Sin embargo, ViewFlipper se puede usar si desea cambiar periódicamente las vistas. Diga como un libro de inversión automático de algún tipo. Aunque una galería de adaptadores personalizados es mucho mejor en esto.

Y sí, eso es todo. Realmente no son mucho más útiles que ViewAnimator. Por qué el desarrollo de Android hace algo es realmente un misterio para mí.

Normalmente preferiría usar un ViewAnimator porque le da más libertad y por lo tanto flexibilidad en la forma de diseñar. Pero si desea funciones como ViewFactory y solo tiene 2 vistas, use ViewSwitcher. Si desea poder cambiar periódicamente las vistas, use ViewFlipper. Si no necesita usar un ViewAnimator.

+0

¿Para qué sirve la fábrica cuando solo hay 2 vistas? – Ali

+0

Después de haber implementado una aleta de vista que contiene aproximadamente 10 vistas personalizadas de texto en su mayoría, y esperando 5 segundos para la primera carga, estoy pensando que el beneficio de una fábrica de vistas es hacer que la inicialización sea más rápida. También recibo una respuesta lenta en los botones de avance y retroceso. Hay algo mal con ViewAnimator, no estoy seguro de por qué debería llevar tanto tiempo. Estaré perfilando con traceview más tarde esta semana y publicaré con lo que aprendo. –

7

No estoy seguro si hay grandes diferencias entre ellos, pero por lo que he reunido la diferencia es que ViewSwitcher se usa en circunstancias donde la vista es la misma pero los datos son diferentes, como en una aplicación de calendario. solo estamos cambiando los datos en la vista.

15

ViewFlipper soporta más de dos puntos de vista, sólo es compatible con ViewSwitcher 2.

+30

No era esa la pregunta :) – paweloque

+0

Ídem, de ahí un voto abajo – ericn

+0

@paweloque Lol. –

Cuestiones relacionadas