我有几个 textEdits 可以从用户那里获取文本,但是我还制作了一个按钮,用于将信息更新到数据库。
我该如何设置,以便用户可以输入一些文本,并且仅在他们按下我为活动制作的“更新”按钮时更新,而不是在使用键盘点击“返回”或“完成”时更新。
我想要做的是删除通过其他方式更新信息的能力,比如键盘上的“下一步”或“返回”按钮。这将是使用页面上定制的更新按钮的唯一方法。
一个建议是消耗按键。通过使用像 consume() 方法。有任何想法吗?
如果这是不可能的,那么我将照原样接受。
下面是editTexts代码之一的示例:
// get the text typed in the description and allow user to edit the text information for title
titleText.setOnKeyListener(new EditText.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
// if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)){
String titleTemp = titleText.getText().toString();
Intent i = getIntent();
Bundle extras = i.getExtras();
String filename2 = extras.getString("filename");
String selection2 = MediaStore.Images.Media.DATA + "='" + filename +"'";
ContentValues newValue = new ContentValues();
newValue.put(MediaStore.Images.Media.TITLE, titleTemp);
getContentResolver().update(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, newValue, selection2, null);
Toast.makeText(Editor.this, "Updated Title to: " + titleTemp, Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
});