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