From 87fd6b3a1c8ff50e27d366ee83ad010b207cc07f Mon Sep 17 00:00:00 2001 From: Blanke Date: Mon, 4 Dec 2017 11:41:57 +0800 Subject: [PATCH] [FIX] disable context menu when long click,fix number disorder when click index. --- .../vcedittext/VerificationCodeEditText.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/vcedittext-lib/src/main/java/com/jkb/vcedittext/VerificationCodeEditText.java b/vcedittext-lib/src/main/java/com/jkb/vcedittext/VerificationCodeEditText.java index 127079d..ff473f5 100644 --- a/vcedittext-lib/src/main/java/com/jkb/vcedittext/VerificationCodeEditText.java +++ b/vcedittext-lib/src/main/java/com/jkb/vcedittext/VerificationCodeEditText.java @@ -12,7 +12,9 @@ import android.text.TextWatcher; import android.util.AttributeSet; import android.util.DisplayMetrics; import android.util.TypedValue; +import android.view.MotionEvent; import android.view.WindowManager; +import android.view.inputmethod.InputMethodManager; /** @@ -120,6 +122,17 @@ public class VerificationCodeEditText extends android.support.v7.widget.AppCompa setMeasuredDimension(widthResult, heightResult); } + @Override + public boolean onTouchEvent(MotionEvent event) { + if (event.getAction() == MotionEvent.ACTION_DOWN) { + requestFocus(); + setSelection(getText().length()); + showKeyBoard(getContext()); + return false; + } + return super.onTouchEvent(event); + } + @Override protected void onDraw(Canvas canvas) { mCurrentPosition = getText().length(); @@ -260,4 +273,9 @@ public class VerificationCodeEditText extends android.support.v7.widget.AppCompa wm.getDefaultDisplay().getMetrics(metrics); return metrics.widthPixels; } + + public void showKeyBoard(Context context) { + InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); + imm.showSoftInput(this, InputMethodManager.SHOW_FORCED); + } }