Autore Topic: SimpleCursorAdapter con 2 cursor diversi  (Letto 819 volte)

Offline cnicola90

  • Nuovo arrivato
  • *
  • Post: 32
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    Windows 7
SimpleCursorAdapter con 2 cursor diversi
« il: 25 Luglio 2012, 13:23:05 CEST »
0
Allora provo a spiegarvi cosa devo fare..in pratica dovrei creare una ListView caricando dati da un database..nel database ho due tabelle e per riempire una casella della mia ListView devo prendere dati da entrambe le tabelle..come posso fare? Nel metodo setListAdapter posso passare solo un cursor, ma mi servirebbe passare un cursor per ogni tabella..come posso fare? P.s se non sono stato chiaro chiedetemi qualsiasi chiarimento, anche banale ;)

Offline denper

  • Utente normale
  • ***
  • Post: 290
  • Respect: +60
    • Mostra profilo
    • Anddenper
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    denper
  • Sistema operativo:
    Window 7, Windows XP
Re:SimpleCursorAdapter con 2 cursor diversi
« Risposta #1 il: 25 Luglio 2012, 13:45:21 CEST »
0
Immagino che tu a livello di SimpleCursorAdapter fai l'override del metodo getView, in questo caso puoi gestire un metodo che ti ritorni il secondo cursore che poi utilizzerai per valorizzare i campi della tua view. Se hai del codice postalo pure che proviamo integrarlo....
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. [A.Einstein]

Proteggi la tua privacy! Utilizza GhostPhone! https://play.google.com/store/apps/details?id=com.denper.gp
Giochi a Winforlife e Superenalotto e sei stanco di controllare le tue schedine manualmente? Prova Checkwin: https://play.google.com/store/apps/details?id=com.denper.checkwintrial

Offline denper

  • Utente normale
  • ***
  • Post: 290
  • Respect: +60
    • Mostra profilo
    • Anddenper
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    denper
  • Sistema operativo:
    Window 7, Windows XP
Re:SimpleCursorAdapter con 2 cursor diversi
« Risposta #2 il: 25 Luglio 2012, 13:49:29 CEST »
0
In ogni caso non puoi eseguire una join tra le 2 tabelle in modo da gestire un unico cursore?
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. [A.Einstein]

Proteggi la tua privacy! Utilizza GhostPhone! https://play.google.com/store/apps/details?id=com.denper.gp
Giochi a Winforlife e Superenalotto e sei stanco di controllare le tue schedine manualmente? Prova Checkwin: https://play.google.com/store/apps/details?id=com.denper.checkwintrial

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:SimpleCursorAdapter con 2 cursor diversi
« Risposta #3 il: 25 Luglio 2012, 13:52:51 CEST »
0
Per rimanere sul semplice, se non hai problematiche di performance, c'è una soluzione grezza ma funzionale: ti occupi tu di prelevare i dati dal database per riempire un ArrayList e colleghi quello alla ListView con un adapter. Sicuramente è meno performante, ma in casi come questo è sicuramente la via più semplice e manutenibile. Ovviamente tutte le volte che refreshi la lista, prima devi anche refreshare esplicitamente l'arraylist.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:SimpleCursorAdapter con 2 cursor diversi
« Risposta #4 il: 25 Luglio 2012, 13:55:30 CEST »
0
Anche io opto per la soluzione di fare un UNION dei risultati, ma questo lo puoi fare solo se lo schema delle due tabelle (o perlomeno i campi che selezioni sono compatibili) è lo stesso.
Altrimenti dai un occhio a questo, dovrebbe permetterti di usare più adapter nella stessa listview:

https://github.com/commonsguy/cwac-merge

Offline cnicola90

  • Nuovo arrivato
  • *
  • Post: 32
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    Windows 7
Re:SimpleCursorAdapter con 2 cursor diversi
« Risposta #5 il: 25 Luglio 2012, 15:53:50 CEST »
0
ho risolto..ho fatto una nuova query alla seconda tabella nel metodo bindView :)
« Ultima modifica: 25 Luglio 2012, 18:10:36 CEST da cnicola90 »

Offline cnicola90

  • Nuovo arrivato
  • *
  • Post: 32
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    Windows 7
Re:SimpleCursorAdapter con 2 cursor diversi
« Risposta #6 il: 25 Luglio 2012, 15:58:38 CEST »
0
p.s dato che non sono tanto esperto, cosa mi ritornerebbe una join?  le due tabelle hanno numero diverso sia di righe che di colonne, ma hanno il campo _id in comune