Ho cercato di creare una visualizzazione elenco stilisticamente diversa, come molte altre persone, e ho iniziato cercando di estendere AbsListView. Per il documento Android, AbsListView è:È possibile estendere AbsListView per creare nuove implementazioni di ListView?
Classe base che può essere utilizzata per implementare elenchi di articoli virtualizzati. Un elenco non ha una definizione spaziale qui. Per esempio, subclases di questa classe in grado di visualizzare il contenuto della lista in una griglia, in un carosello, come pila, ecc
Dopo un certo sforzo e revisione dell'attuazione ListView, sembra che essa non può essere possibile estendere AbsListView come fa ListView a causa dell'accoppiamento delle due classi e dell'impossibilità di accedere ad alcuni membri del pacchetto. Mi sono imbattuto in questo modulo Romain Guy:
AbsListView e AbsSpinner sono progettati per essere esteso nel quadro . Potrebbero essere estesi anche in app di terze parti, ma abbiamo fatto non esporre tutti i campi e i metodi protetti necessari di proposito. Vogliamo essere molto attenti nel modo in cui esponiamo tali API in modo da non ottenere informazioni su per le estensioni future e le modifiche interne. La nostra attuale raccomandazione consiste semplicemente nel copiare/incollare il codice necessario all'interno dell'app .
Ho iniziato a provare a fare questo, ma copiare AbsListView diventa una tana del coniglio di copiare in un mucchio di altre cose e sembra davvero una proposta perdente. Volevo vedere se qualcuno ha avuto successo estendendo AbsListView che potrebbe condividere una metodologia.
[1] http://developer.android.com/reference/android/widget/AbsListView.html
[2] https://groups.google.com/forum/?fromgroups#!topic/android-developers/UhbR1tpVvF0
"sembra davvero una proposta persa" - questa sarebbe la mia valutazione della situazione. – CommonsWare
Grazie Marco. Sembra il Vangelo anche a me. –
forse potresti essere un po 'più specifico di cosa intendi per "lista stilisticamente diversa". Intendi qualcosa che non è una lista verticale? o intendi qualcosa che è verticale, ma ha colori personalizzati, viste, intestazioni, ecc.? – mtmurdock