0

所以我想做的是插入数据库。我在网上找到了以下代码

http://www.vogella.com/articles/AndroidSQLite/article.html

对我来说重要的内容显示在以下块中

ArrayAdapter<Comment> adapter = (ArrayAdapter<Comment>) getListAdapter();
Comment comment = null;
switch (view.getId()) {
case R.id.add:
  String[] comments = new String[] { "Cool", "Very nice", "Hate it" };
  int nextInt = new Random().nextInt(3);
  // Save the new comment to the database
  comment = datasource.createComment(comments[nextInt]);
  adapter.add(comment);

如您所见,代码使用 arrayAdapter 并且为了定义它使用方法

getListAdapter()

类中的哪个方法

ListActivity

所以你可以很容易地猜到这个类被扩展如下

public class TestDatabaseActivity extends ListActivity

现在我们解决了我的问题。我正在尝试做同样的事情,但是在同步活动中,但是为了实现同步任务,您需要扩展另一个类,如下所示

public class UserLoginTask extends AsyncTask<Void, Void, Boolean>

我尝试将我的类 UserLoginTask 和类 ListActivity 之间的关系从 isA 关系更改为 hasA 关系,如下所示

//hasA relationship isA relationship
ListActivity listActiity;

所以现在该数据块将被编辑如下

ArrayAdapter<Comment> adapter =    (ArrayAdapter<Comment>) ((ListActivity) listAdapter).getListAdapter();
// Save the new comment to the database
comment = datasource.createComment(comments[nextInt]);
adapter.add(comment);

但是,这会导致引用该行的空指针异常

adapter.add(comment);

有什么建议么 ?并提前感谢

4

0 回答 0