2013-05-29 3 views
0

Привет, я пытаюсь получить данные из моей базы данных sqlite в listview. Я уже пробовал несколько способов, но всегда вызывал ошибку. (И да, я уже пытался исправить код этой строки, безуспешно). Кодекс: журналПолучить данные из базы данных в listview android

 Cursor cursor = db.getAllmeds(); 

     String[] list = null; 
     int i = 0; 
     cursor.moveToFirst(); 
     for (cursor.moveToFirst();!cursor.isAfterLast();cursor.moveToNext()){ 
      list[i]=cursor.getString(cursor.getColumnIndex("medicamentos_desig")); 
      i+=1; 
     } 

     int to[] = {R.id.listView1}; 

     db.close(); 
     final ListView listview = (ListView) findViewById(R.id.listView1); 
     SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.medicamentos,cursor,list,to,0); 
     listview.setAdapter(adapter); 

     listview.setOnItemClickListener(new OnItemClickListener() { 

      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) { 

       Cursor listCursor = (Cursor) arg0.getItemAtPosition(arg2); 

       String id = listCursor.getString(listCursor.getColumnIndex("medicamentos_id")); 

       Intent passIntent = new Intent(arg1.getContext(),Editar.class); 
       passIntent.putExtra("id", id); 
       passIntent.putExtra("tipo", tipo); 
       passIntent.putExtra("accao", "update"); 
       startActivity(passIntent); 
      } 

     }); 

ошибка:

 05-29 18:33:32.653: E/AndroidRuntime(341): java.lang.ClassCastException: java.lang.String 
    05-29 18:33:32.653: E/AndroidRuntime(341):  at admed.Listar$1.onItemClick(Listar.java:55) 
+0

Какая ошибка? – r2DoesInc

+0

Включите подробную информацию об ошибке. –

+0

уже отправил журнал ошибок –

ответ

0

здесь:

String[] list = null; //<<< 

вам необходимо инициализировать массив list перед добавлением элементов.

cursor.moveToFirst(); 
list=new String[cursor.getCount()];//<<<initialize Array here with cursor Count 
..... 
Смежные вопросы