Java 如何使listview中的edittext中的数据进入数据库?
我有一个列表视图,其中包含编辑文本字段,如下所示Java 如何使listview中的edittext中的数据进入数据库?,java,android,listview,Java,Android,Listview,我有一个列表视图,其中包含编辑文本字段,如下所示 基本上,我想做的是将编辑文本中的位放入数据库。 这是到目前为止我的代码 游标数据=database.query(“名称”),字段,null,null,null,null, 无效) 我在最后一行“editText1.setOnKeyListener(myKeyListener);”上得到了一个空指针异常,因此我认为它实际上并没有从row.xml布局中找到编辑文本 那么,我如何才能在列表视图的编辑文本中键入内容,然后在按下enter键时将其放入数据
基本上,我想做的是将编辑文本中的位放入数据库。 这是到目前为止我的代码 游标数据=database.query(“名称”),字段,null,null,null,null, 无效) 我在最后一行“editText1.setOnKeyListener(myKeyListener);”上得到了一个空指针异常,因此我认为它实际上并没有从row.xml布局中找到编辑文本
那么,我如何才能在列表视图的编辑文本中键入内容,然后在按下enter键时将其放入数据库?您必须处理列表视图中的每个文本项。使用这段代码所要做的就是将第一个字段放入数据库。要完成其余的工作,您必须“滚动”ListView的其余子级,获取它们的值,并将它们放入数据库
不过我不知道你为什么要这么做。您正在显示来自某个地方的数据,然后您想按一个键并将其全部显示在数据库中?为什么不将其从源代码直接移动到数据库中?您仍然可以显示它。或者我遗漏了什么。基本上,我想要做的是有一个人名,然后能够在旁边输入一个值,然后将该值与人名一起输入数据库。我发现它实际上从未出现在列表视图的行中(它只出现在标题中)。因此,我的问题更多的是,当我在列表视图行的编辑文本中键入某个内容并按enter键时,我该如何使其如此(即进入数据库),它似乎只是跳过了onkeylistener位
dataSource = new SimpleCursorAdapter(this, R.layout.row, data, fields,
new int[] { R.id.first, R.id.entry2 });
ListView view = getListView();
setListAdapter(dataSource);
editText1 = (EditText) findViewById(R.id.entry2);
editText1.requestFocus();
OnKeyListener myKeyListener = new OnKeyListener() {
@Override
public boolean onKey(View arg0, int KEYCODE_ENTER, KeyEvent arg2) {
Log.v("Me","Something happened :: ");
ContentValues values = new ContentValues();
values.put("last", editText1.getText().toString());
database.insert("names", null, values);
return false;
}
};
editText1.setOnKeyListener(myKeyListener);
}