我正在尝试从数据库中获取行并从中创建列表视图。
这是通过DbAdapter中的Query方法
public Cursor readInbox(long toId) throws SQLException {
return db.query(TABLE_MAILS, new String[] { ID, KEY_FROM, KEY_TO,
KEY_SUB, KEY_BODY, KEY_DATETIME, KEY_READ }, KEY_TO + "="
+ toId, null, null, null, null, null);
}
这是我想写的代码。但它给出错误
public class InboxActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.inbox);
DBAdapter db = new DBAdapter(InboxActivity.this);
db.open();
long userID = Long.parseLong(MessagingApplication.getUserID());
Cursor inbox = db.readInbox(userID);
startManagingCursor(inbox);
String[] Id = new String[] { DBAdapter.ID };
SimpleCursorAdapter inboxmail = new SimpleCursorAdapter(this, R.layout.list_view, db, Id, null);
setListAdapter(inboxmail);
db.close();
}
}
错误:
The constructor SimpleCursorAdapter(InboxActivity, int, DBAdapter, String[], null) is undefined
答案 0 :(得分:3)
这是一个简单的编译错误。 看一下http://developer.android.com/reference/android/widget/SimpleCursorAdapter.html的公共构造函数:
SimpleCursorAdapter(Context context,int layout,Cursor c,String [] from,int [] to)
您正在提供DBAdapter,您应该在其中提供Cursor。您很可能应该传递收件箱变量而不是DBAdapter