android edittext输入完成后让光标消失

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android edittext输入完成后让光标消失相关的知识,希望对你有一定的参考价值。

RT

首先需要监听输入框的焦点变化,其次再根据焦点是否存在设置其光标显示
代码如下:其中editText是你的editText的id.
editText.setCursorVisible(true); --> 设置光标可见(默认), 为false即不可见
代码如下:
editText.setOnFocusChangeListener(new View.OnFocusChangeListener()
@Override
public void onFocusChange(View view, boolean b)
boolean hasFocus = true;
if (hasFocus)
editText.requestFocus(); //获取焦点,光标出现
editText.setFocusableInTouchMode(true);
editText.setFocusable(true);
editText.setCursorVisible(true);

else
editText.clearFocus();
editText.setCursorVisible(false);


);
参考技术A 尝试添加焦点监听啊,当控件失去焦点,也就是你点击的控件以外的其他地方的时候,实现监听,输入监听的话会在每次输入框发生改变的时候执行 参考技术B 丢失焦点就可以了。追问

能具体到代码吗?我是android新手...

参考技术C Edittext et......
et.clearFocus()//让指定的edittext失去焦点本回答被提问者采纳

Android中的EditText中,输入信息时,怎么能让光标停靠在输入的信息的右侧而不是左侧呢?

本人刚刚自学Android,不懂!求大家帮忙!谢谢!
类似图那样的!我做的计算器

先设置 android:gravity="right" 然后在.java程序中,在每次输出字符之后(text.setText(str);)重新设置光标位置:text.setSelection(str.length());

 

参考技术A 假设你的EditText文本框是edit;
edit.setSelection(edit.length());
这样就光标就会随着你输入而移动了。
参考技术B 不要用setText()方法,这个方法就会出现光标问题的 ,用发送消息的方法 参考技术C 可以在java代码中使用下面代码:
EditText show = findViewById(.............);
show.setSelection(show.getText().toString().trim().length());
参考技术D 光标默认就是在右边啊。

以上是关于android edittext输入完成后让光标消失的主要内容,如果未能解决你的问题,请参考以下文章

Android EditText中字符大小与光标位置

Android中的EditText中,输入信息时,怎么能让光标停靠在输入的信息的右侧而不是左侧呢?

Android edittext - settextmethod 光标问题

Android edittext - settextmethod 光标问题

Android EidtText 光标的使用和设置

EditText双光标问题