我有一个函数可以在单击列表时删除列表中的条目。
entriesView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> parent,
View arg1, int position, long id) {
TodoEntry entryToRemove = (TodoEntry) parent
.getItemAtPosition(position);
ourAdapter.remove(entryToRemove);
return true;
}
});
我想更改该功能,即条目未被删除但在长按时编辑。我想读取条目的值(我将它放在一个数组中,并可以使用entryToEdit.toString();
获取字符串)并将条目更改为用户可以编辑的文本字段。编辑时,文本字段应再次成为一个条目。
答案 0 :(得分:0)
要使用String
方法尝试toString()
,或者使用get方法在类中使用基本逻辑来返回String
。要创建EditText
:
EditText edit = new EditText();
然后将其添加到您的视图中,或者:
EditText edit = (EditText) findViewById(R.id.your_edit_text_id);
然后设置文字:
edit.setText(YOUR_STRING_HERE);
如果您尝试将EditText
设置为ListView
中的特定位置,则需要制作自定义Adapter
。在自定义适配器类中,您需要覆盖getView
方法。使用某种逻辑,您可以适当地显示EditText
或TextView
。
答案 1 :(得分:0)
您可以使用带有textField的对话框,并使用侦听器中正向按钮操作中的值,并使用新数据设置对象。
希望你明白这一点。