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);
}