Sto scrivendo una visualizzazione orizzontale, simile a quelle che conosci sistemi di forma tivo e simili. Per ogni canale c'è una riga con i programmi per le prossime 6 ore circa, con una larghezza proporzionale al tempo di riproduzione.ListView vs LinearLayout
La mia idea è di scrivere un widget personalizzato per ogni riga e impilarli uno sopra l'altro. Questo dovrebbe consentirmi di caricare i dati in modo incrementale, piuttosto che usare una grande vista personalizzata. Avrò comunque bisogno di pulsanti avanti/indietro nella parte superiore della pagina che aggiornino tutte le righe quando si fa clic.
Ora non sono sicuro se dovrei posizionare queste viste in un ListView o in un LinearLayout.
ho raccolto i seguenti vantaggi e svantaggi:
- ListView
- Pro
- efficiente della memoria - ricicla nascosti Visualizzazioni
- sembra essere usato da tutti, in Android comunità, per qualsiasi cosa.
- Potrebbe essere più semplice renderlo pigro, durante l'aggiornamento delle righe, e quindi richiedere meno CPU.
- Contro
- Overkill - io non sarò con la maggior parte delle caratteristiche che ha da offrire
- Può essere un po 'più difficile da attaccare i clickListeners.
- Pro
- LinearLayout
- Pro
- Semplice da usare. Fa quello che ti aspetteresti.
- Contro
- io non l'ho visto usato ovunque per lunghi elenchi.
- Forse è più lento?
- Pro
Il "sembra essere usato da tutti" argomento per ListView include anche il "Master" Twitter app, che Google utilizza per mostrare il "buon design Android". Inoltre, non sembrano utilizzare la maggior parte delle sue funzionalità.
Hai qualche esperienza con questo tipo di lavoro? Ci sono dei consigli che mi sono mancati durante la lettura dei documenti?
è semplice da comprendere, Il layout può contenere la vista, ma una vista non può contenere un layout. Quindi pensa e usa in base alle tue necessità. –
Anche io sono interessato ai trade off. Ho implementato una visualizzazione live di tutti i dati del sensore sia in LinearLayout che in ListView (Nexus 4). ListView era notevolmente più lento con aggiornamenti dello schermo limitati a 200ms ogni. Si noti che ho utilizzato ExpandableListView e non ho utilizzato adapter.onDataSetChanged(), ma ho modificato solo TextViews rilevanti. –
domanda interessante – Fattie