我正在尝试创建自定义CursorAdapter
。我已经设置了DBAdapter
类的数据库。我有:
public class ExampleCursorAdapter extends CursorAdapter {
public ExampleCursorAdapter(Context context, Cursor c) {
super(context, c);
}
public void bindView(View view, Context context, Cursor cursor) {
TextView summary = (TextView)view.findViewById(R.id.label);
summary.setText(cursor.getString(
cursor.getColumnIndex(DBAdapter.question)));
}
public View newView(Context context, Cursor cursor, ViewGroup parent) {
LayoutInflater inflater = LayoutInflater.from(context);
View v = inflater.inflate(R.layout.more_results, parent, false);
bindView(v, context, cursor);
return v;
}
}
我有一个详细的反馈课,我正在创建ExampleCursorAdapter
的实例。我遇到的问题似乎没有任何设置CursorAdapter
。
public class DetailedFeedback extends ListActivity {
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
Cursor c = db.getAllContacts();
ExampleCursorAdapter adapter = new ExampleCursorAdapter(this, c);
setListAdapter(adapter);
}
}
我不确定这是否是正确的语法。
答案 0 :(得分:0)
您的自定义适配器构造函数是:
public ExampleCursorAdapter(Context context, Cursor c) {
super(context, c);
}
当您实例化它时,您设置了null
Context
和null
Cursor
。将光标设置为实例化适配器的位置:
Cursor c = //.. retrieve a cursor with results from the database
ExampleCursorAdapter adapter = new ExampleCursorAdapter(this, c);
您还有方法changeCursor()
。
答案 1 :(得分:0)
尝试使用SimpleCursorAdapter进行数据库输入。 SimpleCursorAdapter