<EditText
android:id="@+id/verCodeEdit"
android:cursorVisible="false" />
布局属性 直接可以设置光标是否显示 false为隐藏 true为显示
verCodeEdit.setOnTouchListener(new View.OnTouchListener() {
@SuppressLint("ClickableViewAccessibility")
@Override
public boolean onTouch(View v, MotionEvent event) {
if (MotionEvent.ACTION_DOWN == event.getAction()) {
verCodeEdit.setCursorVisible(true);// 再次点击显示光标
}
return false;
}
});
或者使用状态监听
//设置的输入框焦点监听
verCodeEdit.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View view, boolean hasFocus) {
if (hasFocus) { //hasFocus为true是被选中状态
} else {
}
}
});
private void softinput() { //对软键盘的处理
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
boolean isOpen = imm.isActive();//isOpen若返回true,则表示输入法打开
if (isOpen) {
verCodeEdit.setCursorVisible(false);// 再次点击隐藏光标
((InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE))//关闭输入法
.hideSoftInputFromWindow(verCodeEdit.getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
// (WidgetSearchActivity是当前的Activity)
}
}
edittext.requestFocus();给edittext初始化 初始化后会产生焦点