如何实现点击屏幕其他地方让edittext失去焦点6
发布网友
发布时间:2023-10-19 03:42
我来回答
共2个回答
热心网友
时间:2024-11-19 07:32
方法就是:让EditText所在的layout获得焦点。
给layout注册OnTouchListener*
直接使用 .requestFocus() 无法获取焦点,焦点依然在EditTtext上
先调用下面这两个方法:
.setFocusable(true);
.setFocusableInTouchMode(true);
再调用 .requestFocus() 就可获取焦点
relative.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
relative.setFocusable(true);
relative.setFocusableInTouchMode(true);
relative.requestFocus();
return false;
}
});
热心网友
时间:2024-11-19 07:33
复写下面这个方法:
@Override public boolean onTouchEvent(MotionEvent event) { InputMethodManager imm = (InputMethodManager)this.getSystemService(Context.INPUT_METHOD_SERVICE); //login_auto_account.setCursorVisible(false); imm.hideSoftInputFromWindow(login_auto_account.getWindowToken(), 0); return super.onTouchEvent(event); }其中login_auto_account是EditText或者是AutoCompletTextView的属性