2010-08-22 6 views
81

Entrambi ereditano ViewAnimator. So che ViewSwitcher consente solo due visualizzazioni, mentre ViewFlipper ne consente di più. Ma perché Android ha creato ViewSwitcher, se è solo uno ViewFlipper con 2 visualizzazioni? Ci sono altre differenze? A quali condizioni userà l'una superiore all'altra?Qual è la differenza tra ViewFlipper e ViewSwitcher

risposta

76

Da quello che posso dire, ViewSwitcher viene utilizzato se si desidera passare da una vista all'altra come si è detto. Utile se hai 2 visualizzazioni che devi andare avanti e indietro abbastanza regolarmente. E la classe implementa un ViewFactory se desideri utilizzarlo.

Tuttavia, ViewFlipper può essere utilizzato se si desidera modificare periodicamente le viste. Dì come un libro sfogliabile automatizzato di qualche tipo. Anche se una galleria di adattatori personalizzati è molto meglio in questo.

E sì, questo è tutto. In realtà non sono molto più utili di ViewAnimator. Perché lo sviluppo Android rende tutto è davvero un mistero per me.

Normalmente preferisco semplicemente utilizzare un ViewAnimator perché offre maggiore libertà e flessibilità nel modo di progettare. Ma se vuoi funzionalità come ViewFactory e hai solo 2 visualizzazioni usa ViewSwitcher. Se si desidera poter modificare periodicamente le viste, utilizzare ViewFlipper. Se non hai bisogno di utilizzare un ViewAnimator.

+0

Che cosa è buono per la fabbrica quando c'è solo 2 Visto? – Ali

+0

Dopo aver implementato un flipper di viste che contiene circa 10 visualizzazioni personalizzate di testo per lo più, e in attesa di 5 secondi per il primo caricamento, penso che il vantaggio di una view factory sia quello di rendere l'inizializzazione più veloce. Ricevo anche una risposta lenta sui pulsanti avanti e indietro. C'è qualcosa di sbagliato in ViewAnimator, non sono sicuro del motivo per cui dovrebbe impiegare così tanto tempo. Questa settimana la analizzerò con una panoramica e pubblicheremo ciò che apprendo. –

7

Non sono sicuro se ci sono grandi differenze tra di loro ma da quello che ho raccolto la differenza è che ViewSwitcher viene utilizzato in circostanze in cui la vista è la stessa ma i dati sono diversi - come su un'app di calendario - stiamo solo cambiando i dati nella vista.

15

ViewFlipper supporta più di due punti di vista, ViewSwitcher supporta solo 2.

+30

Non era quella la domanda :) – paweloque

+0

idem, quindi un voto basso – ericn

+0

@paweloque Lol. –

Problemi correlati