2018年6月24日 星期日
EditText隱藏關閉軟鍵盤,觸發軟鍵盤Enter
// 強制隱藏Android輸入法窗口
InputMethodManager imm= (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(etCode.getWindowToken(),0);
//--在空白處關閉軟鍵盤
public static Boolean hideInputMethod(Context context, View v) {
InputMethodManager imm = (InputMethodManager) context
.getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm != null) {
return imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
}
return false;
}
public static boolean isShouldHideInput(View v, MotionEvent event) {
if (v != null && (v instanceof EditText)) {
int[] leftTop = { 0, 0 };
v.getLocationInWindow(leftTop);
int left = leftTop[0], top = leftTop[1], bottom = top + v.getHeight(), right = left
+ v.getWidth();
if (event.getX() > left && event.getX() < right
&& event.getY() > top && event.getY() < bottom) {
// 保留点击EditText的事件
return false;
} else {
return true;
}
}
return false;
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
if (ev.getAction() == MotionEvent.ACTION_DOWN) {
View v = getCurrentFocus();
if (isShouldHideInput(v, ev)) {
if(hideInputMethod(this, v)) {
return true; //隐藏键盘时,其他控件不响应点击事件==》注释则不拦截点击事件
}
}
}
return super.dispatchTouchEvent(ev);
}
//軟鍵盤 enter 觸發動作
etCode.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
}
});
訂閱:
張貼留言 (Atom)
-
@Override public void onResponse(Call call, Response response) throws IOException { // final String string = res...
-
//取得網頁上的字串 HttpURLConnection conn=null; try { URL httpUri = new URL(url); conn = (HttpURLConnec...
-
安裝ZX條碼器 public void Menu_QRCODE_Click(View v) { Intent intent = new Intent("com.google.zxing.client.android.SCAN"); ...
沒有留言:
張貼留言