Autore Topic: ExapndableListview database  (Letto 234 volte)

Offline JCC

  • Utente junior
  • **
  • Post: 99
  • Respect: +1
    • Mostra profilo
ExapndableListview database
« il: 14 Ottobre 2014, 00:46:06 CEST »
0
Stò cercando di visualizzare i dati presente in 2 colonne di una tabella in una ExapndableListview .
Con questa query riesco a raggruppare i dati della prima colonna e visualizzarli nel Layout principale.
Ora, per ogni riga del Layout principale devo associare i relativi dati della seconda colonna ma ottengo questo errore:
Codice (Java): [Seleziona]
10-14 00:42:38.575: E/AndroidRuntime(7057):     at categorie.ExpandListAdapter.getChildView(ExpandListAdapter.java:52)
10-14 00:42:38.575: E/AndroidRuntime(7057):     at android.widget.ExpandableListConnector.getView(ExpandableListConnector.java:455)
10-14 00:42:38.575: E/AndroidRuntime(7057):     at android.widget.AbsListView.obtainView(AbsListView.java:2715)
10-14 00:42:38.575: E/AndroidRuntime(7057):     at android.widget.ListView.measureHeightOfChildren(ListView.java:1274)
Codice (Java): [Seleziona]
public ArrayList<Group> SetStandardGroups() {
                SQLiteDatabase db = new DatabaseHelper(getActivity()).getReadableDatabase();
               
                ArrayList<Group> list = new ArrayList<Group>();
                ArrayList<Child> ch_list;
                String sql = "SELECT _id,nome_categoria, nome_sottocategoria  FROM tabella ORDER BY nome_categoria ASC";
                 Cursor c = db.rawQuery(sql, null);
                        int count = c.getCount();
                       
                        String[] categoria = new String[count];
                        String[] id = new String[count];                        
                        String[] sotto_categoria = new String[count];
                       
                        for(int i=0; i<count; i++) {
                            c.moveToNext();            
                            id[i] = c.getString(0);
                            categoria[i] = c.getString(1);                        
                            sotto_categoria[i] = c.getString(2);
                        }
                        for (String group_name : categoria) {
                                Group gru = new Group();
                                gru.setName(group_name);
                               
                       
                               
                                ch_list = new ArrayList<Child>();                              
                                for (String group_names : sotto_categoria) {
                                        Child ch = new Child();
                                        ch.setName(group_names);
                                        ch_list.add(ch);
                                       
                               
                                }
                                gru.setItems(ch_list);
                                list.add(gru);
                                c.close();
                               
                        }