私は同様の要件を持っていました。ユーザーがEditTextを編集してクリックしたいとき、カーソルが最後にあるはずです。私は以下を使って同じことを達成しました:
edtDisplayName.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP || event.getAction() == MotionEvent.ACTION_DOWN) {
edtDisplayName.setSelection(edtDisplayName.getText()
.length());
edtDisplayName.requestFocus();
//Open key board for user to edit
Commons.showKeyBoard(OnBoardActivity.this, edtDisplayName);
return true;
}
return false;
}
});
私はキーボードをどのように開いたのですか?
public static void showKeyBoard(Context context, View view) {
InputMethodManager imm = (InputMethodManager) context
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view, 0);
}