我目前有一个包含从sqlite数据库填充的listView的应用程序。 ListView包含每个项目的两个文本视图,一个用于名称,另一个用于状态。状态显示为0或1,如true或false。我想将包含数字0或1的每个项目作为显示打开或关闭的状态。
列表视图的方法:
// Return all data in the database.
public Cursor getAllRows() {
String where = null;
Cursor c = ourDatabase.query(true, DATABASE_TABLE, ALL_KEYS, where,
null, null, null, null, null);
if (c != null) {
c.moveToFirst();
}
return c;
}
// also added
// Get a specific row (by rowId)
public Cursor getRow(long rowId) {
String where = KEY_ROWID + "=" + rowId;
Cursor c = ourDatabase.query(true, DATABASE_TABLE, ALL_KEYS, where,
null, null, null, null, null);
if (c != null) {
c.moveToFirst();
}
return c;
}
这是我的listView代码:
private void loadListView() {
// TODO Auto-generated method stub
Locker getList = new Locker(this);
getList.open();
Cursor cursor = getList.getAllRows();
startManagingCursor(cursor);
// setup mapping
String[] fromFieldNames = new String[] { getList.KEY_LOCKERNUMBER,
getList.KEY_STATUS };
int[] toViewIDs = new int[] { R.id.tvLockerNumber, R.id.tvSatus };
// create adapter
SimpleCursorAdapter myCursorAdapter = new SimpleCursorAdapter(this,
R.layout.itemlayout, cursor, fromFieldNames, toViewIDs);
// set the adapter
ListView myList = (ListView) findViewById(R.id.lvInfo);
myList.setAdapter(myCursorAdapter);
}
我该怎么做呢?
答案 0 :(得分:1)
您必须实现myCursorAdapter的setViewValue方法,以便在1或0时将textview设置为Open或Close。
看看this answer的例外情况。另外,请查看developer's guide了解更多详情。