Android(安卓)Edittext焦点处理;
16lz
2021-12-04
1、进入界面EditText自动获取焦点并弹出软键盘;
EditText不做任何处理,进入界面会自动或焦;
清单文件中给该Activity设置 android:windowSoftInputMode="stateVisible" ,就会自动弹出软键盘了;
2、进入界面EditText不获取焦点也不弹出软键盘;
android:focusable="true"android:focusableInTouchMode="true"
给该EditText的父布局加上以上两个属性就不会自动获取焦点了;让父布局抢走焦点;
清单文件中给该Activity设置 android:windowSoftInputMode="stateHidden"
3、EditText获取焦点和失去焦点的监听:
etSearch.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus) { // 获取焦点时 tvCancle.setVisibility(View.VISIBLE); } else { // 失去焦点时 tvCancle.setVisibility(View.GONE); } } });
4、主动让EditText失去焦点、获取焦点;
etSearch.clearFocus(); //让输入框失去焦点 etSearch.requestFocus(); //让输入框获取焦点
附:隐藏软键盘:
public void hideSystemSoftKeyboard(Activity activity){ ((InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); }
更多相关文章
- Android(安卓)滚动条属性
- android EditText 全面阐述
- android 获取屏幕分辨率
- android 的各种manager
- android google地图定位开发,且可以自由移动位置重新获取定位,地址
- android 开发 解码gif图片,获取每帧bitmap
- Android(安卓)软键盘
- android:inputType标签
- Android(安卓)如何使Edittext不弹出软键盘