EditText中定位光标位置

时间:2023-02-01 08:55:57

小弟刚刚接触android,遇到了一些奇怪的问题,请大家多多帮忙

我在EditView中设置了两行字符串,第一行是一个网址链接,第二行市一般的字符串,如下图:

EditText中定位光标位置

现在的问题是,我想在两行文字之间再输入其他内容,可是没法定位光标,请问各位,我该怎么办啊?

非常感谢各位的帮忙!谢谢谢谢谢~

11 个解决方案

#1


如果没有设置那个链接,那么就可以定位光标了,可是为什么有链接就不能定位光标呢?

#2


前面的url和后面的字符串之间有回车或者空行吗?如果有就能定为吧。
按照你的描述,应该是有三行,中间是一个空行,光标定位在空行上。

#3


引用 2 楼 ameyume 的回复:
前面的url和后面的字符串之间有回车或者空行吗?如果有就能定为吧。
按照你的描述,应该是有三行,中间是一个空行,光标定位在空行上。


有空行的,代码是这样写的:
etEmailBody.setText("www.google.com\n\n\n\nHello world");

可是就是不能定位

#4


auto link去掉呢?

#5


有时候可以选择换个思路。比如那"www.google.com放其他控件中。。嘿嘿。或者你去api查查edittext的属性好像有个设置这个换行什么的

#6


引用 4 楼 feifanup 的回复:
auto link去掉呢?


去掉可以,可是那样的话,链接就没用了

#7


引用 5 楼 peijiangping1989 的回复:
有时候可以选择换个思路。比如那"www.google.com放其他控件中。。嘿嘿。或者你去api查查edittext的属性好像有个设置这个换行什么的


我本来是准备写一个邮件发送程序的,邮件内容里面包含链接,所以就放在一起了,呵呵,不过你的建议不错~

#8


你可以直接写html啊
str = "<a href=\"www.google.com\">www.google.com</a>\n\ntest"

TEXTVIEW.setText( Html.fromHtml(str));

#9


楼上的可以试一试

#10


引用 8 楼 feifanup 的回复:
你可以直接写html啊
str = "<a href=\"www.google.com\">www.google.com</a>\n\ntest"

TEXTVIEW.setText( Html.fromHtml(str));


效果还是那样,不过还是谢谢你啦。

#11


xml文件中:gravity=left|top保持默认在  左、上边
edittext.requestFocusFromTouch();//让光标放入到点击位置。
edittext.requestFocus();//默认方式获得焦点

#1


如果没有设置那个链接,那么就可以定位光标了,可是为什么有链接就不能定位光标呢?

#2


前面的url和后面的字符串之间有回车或者空行吗?如果有就能定为吧。
按照你的描述,应该是有三行,中间是一个空行,光标定位在空行上。

#3


引用 2 楼 ameyume 的回复:
前面的url和后面的字符串之间有回车或者空行吗?如果有就能定为吧。
按照你的描述,应该是有三行,中间是一个空行,光标定位在空行上。


有空行的,代码是这样写的:
etEmailBody.setText("www.google.com\n\n\n\nHello world");

可是就是不能定位

#4


auto link去掉呢?

#5


有时候可以选择换个思路。比如那"www.google.com放其他控件中。。嘿嘿。或者你去api查查edittext的属性好像有个设置这个换行什么的

#6


引用 4 楼 feifanup 的回复:
auto link去掉呢?


去掉可以,可是那样的话,链接就没用了

#7


引用 5 楼 peijiangping1989 的回复:
有时候可以选择换个思路。比如那"www.google.com放其他控件中。。嘿嘿。或者你去api查查edittext的属性好像有个设置这个换行什么的


我本来是准备写一个邮件发送程序的,邮件内容里面包含链接,所以就放在一起了,呵呵,不过你的建议不错~

#8


你可以直接写html啊
str = "<a href=\"www.google.com\">www.google.com</a>\n\ntest"

TEXTVIEW.setText( Html.fromHtml(str));

#9


楼上的可以试一试

#10


引用 8 楼 feifanup 的回复:
你可以直接写html啊
str = "<a href=\"www.google.com\">www.google.com</a>\n\ntest"

TEXTVIEW.setText( Html.fromHtml(str));


效果还是那样,不过还是谢谢你啦。

#11


xml文件中:gravity=left|top保持默认在  左、上边
edittext.requestFocusFromTouch();//让光标放入到点击位置。
edittext.requestFocus();//默认方式获得焦点