2014-12-17 2 views
1

저는 비교적 안드로이드에 익숙하며 To-Do List 응용 프로그램을 만들고있었습니다. 데이터베이스에 작업 열이 있습니다. 어떻게 이러한 작업을 ArrayList에 넣고 표시 할 수 있습니까?SQLite 데이터베이스의 데이터를 ArrayList에 추가하는 방법 (안드로이드)

helper = new TaskDBHelper(MainActivity.this); 
     SQLiteDatabase db = helper.getReadableDatabase(); 
     Cursor cursor = db.query(TaskContract.TABLE, new String[]{TaskContract.Columns._ID,TaskContract.Columns.TASK}, null, null, null, null, null); 

     arrayListToDo = new ArrayList<String>(); 

arrayAdapterToDo = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arrayListToDo); 

     ListView listViewToDo = (ListView) findViewById(R.id.listViewToDo); 
     listViewToDo.setAdapter(arrayAdapterToDo); 
+0

당신은 당신의 커서를 반복 할 수 코드를 시도하고 당신의 ArrayList에 작업을 추가하지만 난 당신이보고 좋을 것 CursorAdapters에 삽입합니다. – ottel142

답변

2

while (cursor.moveToNext()) { 

arrayListToDo.add(cursor.getString(cursor.getColumnIndex("Your column name"))); 
} 
0

당신은 배열 목록에있는 데이터를 얻을 수 있습니다 : -

ArrayList<String> arrayListToDo= new ArrayList<String>(); 
 
//your query will returns cursor 
 
if (cursor.moveToFirst()) { 
 
    do { 
 
    arrayListToDo.add(get you string from cursor); 
 
    } while (cursor.moveToNext()); 
 
}

이제 어댑터이 ARAY 목록을 추가합니다. 데이터베이스에서

0

가져 오기 목록 데이터 이것은 단지 개요입니다

 ArrayList<String> data = databaseObject.GetList(); 
ListView listViewToDo = (ListView) findViewById(R.id.listViewToDo); 
arrayAdapterToDo = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, data); 
listViewToDo.setAdapter(arrayAdapterToDo); 


     ArrayList<String> GetList() 
    { 
     ArrayList<String> arrayListtemp= new ArrayList<String>(); 
     SQLiteDatabase db = helper.getReadableDatabase(); 
     Cursor cursor = db.query(TaskContract.TABLE, new String[]{TaskContract.Columns._ID,TaskContract.Columns.TASK}, null, null, null, null, null); 
     if (cursor.moveToFirst()) { 
      do { 
       arrayListtemp.add("");// added your table value from database 
      } while (cursor.moveToNext()); 
     } 
     return arrayListtemp; 
    } 
관련 문제