Autore Topic: problema recupero dati da db  (Letto 334 volte)

Offline gaetano_c

  • Nuovo arrivato
  • *
  • Post: 33
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    s3
  • Sistema operativo:
    Windows 7
problema recupero dati da db
« il: 16 Settembre 2014, 20:49:58 CEST »
0
gentili amici ho un problema:
vorrei leggere alcuni record da un database in una serie di EditText che vi rappresento per semplificazione con uno Screenshot allegato.
i codici della activity sono
Codice (Java): [Seleziona]
 @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getActionBar().setDisplayHomeAsUpEnabled(true);
        setContentView(R.layout.imputdati);
        //22-27 il CursorAdapter usato nell'activity collega il set di risultati del db con la view o list Activity
        adapter = new CursorAdapter(this, db.getAnagrafica(), false) {
            @Override
            //22 per visualizzare dati del database
            public View newView(Context context, Cursor cursor, ViewGroup viewGroup)    //crea la vista che conterrà i dati
            {
                View v = LayoutInflater.from(context).inflate(R.layout.imputdati, null);
                return v;
            }
            @Override
            public void bindView(View view, Context context, Cursor cursor)     //22 collega la vista creata da newView con i dati del cursore
            {                                                                   // per la visualizzazione dei dati richiamati in DbAdapter
                // con il metodo getReadableDatabase
                EditText et = (EditText) view.findViewById(R.id.txt_PRZ1);
                et.setText(cursor.getString(cursor.getColumnIndex("PRZ")));
                et = (EditText) view.findViewById(R.id.txt_DAT1);
                et.setText(cursor.getString(cursor.getColumnIndex("DAT")));
                et = (EditText) view.findViewById(R.id.txt_SUP1);
                et.setText(cursor.getString(cursor.getColumnIndex("SUP")));
                et = (EditText) view.findViewById(R.id.txt_BAL1);
                et.setText(cursor.getString(cursor.getColumnIndex("BAL")));
                et = (EditText) view.findViewById(R.id.txt_IMP1);
                et.setText(cursor.getString(cursor.getColumnIndex("IMP")));
                et = (EditText) view.findViewById(R.id.txt_SER1);
                et.setText(cursor.getString(cursor.getColumnIndex("SER")));
                et = (EditText) view.findViewById(R.id.txt_STM1);
                et.setText(cursor.getString(cursor.getColumnIndex("STM")));
                et = (EditText) view.findViewById(R.id.txt_LIV1);
                et.setText(cursor.getString(cursor.getColumnIndex("LIV")));
                et = (EditText) view.findViewById(R.id.txt_BOX1);
                et.setText(cursor.getString(cursor.getColumnIndex("BOX")));
                et = (EditText) view.findViewById(R.id.txt_CAN1);
                et.setText(cursor.getString(cursor.getColumnIndex("CAN")));
                et = (EditText) view.findViewById(R.id.txt_CEN1);
                et.setText(cursor.getString(cursor.getColumnIndex("CEN")));
                et = (EditText) view.findViewById(R.id.txt_PAN1);
                et.setText(cursor.getString(cursor.getColumnIndex("PAN")));

                et = (EditText) view.findViewById(R.id.txt_PRZ2);
                et.setText(cursor.getString(cursor.getColumnIndex("PRZ")));
                et = (EditText) view.findViewById(R.id.txt_DAT2);
                et.setText(cursor.getString(cursor.getColumnIndex("DAT")));
                et = (EditText) view.findViewById(R.id.txt_SUP2);
                et.setText(cursor.getString(cursor.getColumnIndex("SUP")));
                et = (EditText) view.findViewById(R.id.txt_BAL2);
                et.setText(cursor.getString(cursor.getColumnIndex("BAL")));
                et = (EditText) view.findViewById(R.id.txt_IMP2);
                et.setText(cursor.getString(cursor.getColumnIndex("IMP")));
                et = (EditText) view.findViewById(R.id.txt_SER2);
                et.setText(cursor.getString(cursor.getColumnIndex("SER")));
                et = (EditText) view.findViewById(R.id.txt_STM2);
                et.setText(cursor.getString(cursor.getColumnIndex("STM")));
                et = (EditText) view.findViewById(R.id.txt_LIV2);
                et.setText(cursor.getString(cursor.getColumnIndex("LIV")));
                et = (EditText) view.findViewById(R.id.txt_BOX2);
                et.setText(cursor.getString(cursor.getColumnIndex("BOX")));
                et = (EditText) view.findViewById(R.id.txt_CAN2);
                et.setText(cursor.getString(cursor.getColumnIndex("CAN")));
                et = (EditText) view.findViewById(R.id.txt_CEN2);
                et.setText(cursor.getString(cursor.getColumnIndex("CEN")));
                et = (EditText) view.findViewById(R.id.txt_PAN2);
                et.setText(cursor.getString(cursor.getColumnIndex("PAN")));

                et = (EditText) view.findViewById(R.id.txt_PRZ3);
                et.setText(cursor.getString(cursor.getColumnIndex("PRZ")));
                et = (EditText) view.findViewById(R.id.txt_DAT3);
                et.setText(cursor.getString(cursor.getColumnIndex("DAT")));
                et = (EditText) view.findViewById(R.id.txt_SUP3);
                et.setText(cursor.getString(cursor.getColumnIndex("SUP")));
                et = (EditText) view.findViewById(R.id.txt_BAL3);
                et.setText(cursor.getString(cursor.getColumnIndex("BAL")));
                et = (EditText) view.findViewById(R.id.txt_IMP3);
                et.setText(cursor.getString(cursor.getColumnIndex("IMP")));
                et = (EditText) view.findViewById(R.id.txt_SER3);
                et.setText(cursor.getString(cursor.getColumnIndex("SER")));
                et = (EditText) view.findViewById(R.id.txt_STM3);
                et.setText(cursor.getString(cursor.getColumnIndex("STM")));
                et = (EditText) view.findViewById(R.id.txt_LIV3);
                et.setText(cursor.getString(cursor.getColumnIndex("LIV")));
                et = (EditText) view.findViewById(R.id.txt_BOX3);
                et.setText(cursor.getString(cursor.getColumnIndex("BOX")));
                et = (EditText) view.findViewById(R.id.txt_CAN3);
                et.setText(cursor.getString(cursor.getColumnIndex("CAN")));
                et = (EditText) view.findViewById(R.id.txt_CEN3);
                et.setText(cursor.getString(cursor.getColumnIndex("CEN")));
                et = (EditText) view.findViewById(R.id.txt_PAN3);
                et.setText(cursor.getString(cursor.getColumnIndex("PAN")));
            }
        };
mentre le query del mio DbAdapter è

Codice (Java): [Seleziona]
public Cursor getAnagrafica() {
        SQLiteDatabase db = helper.getReadableDatabase();    //20-21-22 Query di lettura (recupero) mediante classe Cursor dei record di una tabella
        Cursor crs = db.query("anagrafica", null, null, null, null, null, null);
        return crs;
    }
vorrei precisare che se estendo la classe dell'activity con ListActivity invece di Activity mi riempie tutte le EditText ma nella seconda terza e quarta colonna delle unità ripete i dati della prima colonna, praticamente legge un solo record e lo ripete per tutte e quattro le colonne della Activity che rappresenta i dati,
spero di essere stato chiaro.
avevo pensato di usare 4 listView ma non ci sono riuscito

al momento non mi da alcun errore e grazie allo SharedPreferences inserisco i dati nella tabella manualmente e li salvo.
grazie a chi vorrà aiutarmi,

« Ultima modifica: 17 Settembre 2014, 19:17:39 CEST da gaetano_c »

Offline gaetano_c

  • Nuovo arrivato
  • *
  • Post: 33
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    s3
  • Sistema operativo:
    Windows 7
Re:problema recupero dati da db
« Risposta #1 il: 18 Settembre 2014, 09:35:19 CEST »
0
Anche un semplice riferimento sarebbe gradito