有两个EditText,在加载页面时,在第一个EditText中设置了一个文本,所以现在光标将位于EditText的起始位置,我想在第二个EditText中设置光标的位置,其中不包含数据。如何做到这一点?
当前回答
在kotlin中,你可以像这样创建一个扩展函数:
fun EditText.placeCursorAtLast() {
val string = this.text.toString()
this.setSelection(string.length)
}
然后简单地调用myEditText.placeCursorAtLast()
其他回答
让editText2是你的第二个EditText视图。然后将以下代码放在onResume()中
editText2.setFocusableInTouchMode(true);
editText2.requestFocus();
或者把
<requestFocus />
在第二个EditText视图的xml布局中。
我相信最简单的方法就是使用填充。
Say in your xml's edittext section, add android: paddingLeft = " 100 dp” This will move your start position of cursor 100dp right from left end.
同理,你可以用 android: paddingRight = " 100 dp” 这将把你的光标的结束位置从右端向左移动100dp。
要了解更多细节,请查看我博客上的这篇文章:Android:在EditText Widget中设置光标的起始和结束位置
这段代码将帮助您将光标显示在编辑文本的最后一个位置。
editText.requestFocus();
editText.setSelection(editText.length());
我想在不包含数据的编辑文本中设置光标位置
在空的EditText中只有一个位置,它是setSelection(0)。
或者您的意思是当您的活动打开时,您希望将焦点集中到您的EditText ?在这种情况下,它的requestFocus()
如果要在EditText中设置光标位置?试试下面的代码
EditText rename;
String title = "title_goes_here";
int counts = (int) title.length();
rename.setSelection(counts);
rename.setText(title);
推荐文章
- apk (.apk)和应用程序包(.aab)的区别
- 如何设置超时在改造库?
- Android - SPAN_EXCLUSIVE_EXCLUSIVE跨度不能为零长度
- TextView的字体大小在Android应用程序改变字体大小从本机设置
- 如何模拟Android杀死我的进程
- 禁用EditText闪烁光标
- Android Eclipse -无法找到*.apk
- 设置TextView文本从html格式的字符串资源在XML
- 如何允许所有网络连接类型HTTP和HTTPS在Android(9)馅饼?
- Android加载JS包失败
- Android Studio, logcat在应用程序关闭后清理
- 在android中从上下文获取活动
- 无法解析主机"<URL here>"没有与主机名关联的地址
- getActivity()在Fragment函数中返回null
- 按钮背景是透明的