1
我想查詢我的sqlite數據庫中的所有行,然後將其傳遞給列表視圖以顯示在我的應用程序中。如何存儲取自sqlite數據庫的listview顯示對象?
下面是代碼(我有一個student.java實現):
StudentDAO.java:
public void add(Student student)
{
db = helper.getWritableDatabase();
db.execSQL("insert into t_student (sid, name, age) values (?,?,?)", new Object[]
{ student.getId(), student.getName(), student.getAge()}
);
}
public Student findAll()
{
db = helper.getWritableDatabase();
Cursor cursor = db.rawQuery("select sid, name, age from t_student", (String[]) new Object()
);
if(cursor.moveToNext())
return new Student(cursor.getInt(cursor.getColumnIndex("sid")), cursor.getString(cursor.getColumnIndex("name")), cursor.getShort(cursor.getColumnIndex("age")));
return null;
}
MultiList.java:
public class MultiList extends ListActivity {
ListView lv;
SimpleAdapter sd;
StudentDAO dao = new StudentDAO(MultiList.this);
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Student Alex = new Student();
chan.setId(1);
chan.setAge((short) 18);
chan.setName("Alex ");
dao.add(Alex);
Student Queena = new Student();
chan2.setId(2);
chan2.setAge((short) 19);
chan2.setName("Queena");
dao.add(Queena);
Student Tom = new Student();
chan3.setId(3);
chan3.setAge((short) 20);
chan3.setName("Tom");
dao.add(Tom);
dao.findAll();////how to store them???
正如你所看到的,現在,我插入後所有三個對象的學生到我的數據庫,我怎麼看他們,存儲它們?因爲我的findAll()方法返回一個學生對象。 很抱歉,這可能是一個簡單的問題,請大家幫忙
我的數據庫將會非常小,大約有100個條目。 我試過使用ArrayList studentArrayList = new ArrayList (); 。你認爲這有意義嗎? –
2012-07-22 18:16:50
不要忘記使用set ...由setListAdapter()設置。 如果您使用和CursorAdapter,則可以直接使用數據庫查詢進行設置。 – 2012-07-22 18:31:55