ユーザーからテキストを取得できるいくつかの textEdits がありますが、データベースへの情報の更新に使用されるボタンも作成しました。
ユーザーがテキストを入力して、アクティビティ用に作成した「更新」ボタンを押したときにのみ更新できるように、キーボードで「戻る」または「完了」を押したときではなく、これを設定するにはどうすればよいですか。
私がやろうとしているのは、キーボードの「次へ」ボタンや「戻る」ボタンなどの他の方法で情報を更新する機能を削除することです。ページのカスタムメイドの更新ボタンを使用してこれを行う唯一の方法を残します。
1 つの提案は、キーストロークを消費することでした。consumer() メソッドのようなものを使用して。何か案は?
それが不可能なら、私はそのまま生きていきます。
以下は、editTexts コードの 1 つの例です。
// 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;
}
});