Android 如何滚动到EditText中的某些字符
我有一个Android 如何滚动到EditText中的某些字符,android,string,scroll,android-edittext,horizontalscrollview,Android,String,Scroll,Android Edittext,Horizontalscrollview,我有一个水平滚动视图,里面有编辑文本EditText有文本(例如): “testing string testing string X testing string testing string Y testing string testing string Z”。我通过编程将X替换为某个字符串,然后将Y替换为下一个字符串,以此类推。 如何查找替换文本的位置: 第一:到X 第二:对Y 我尝试将addTextChangedListener()添加到myEditText,并在beforeTextCh
水平滚动视图
,里面有编辑文本
EditText
有文本(例如):“testing string testing string X testing string testing string Y testing string testing string Z”。
我通过编程将X替换为某个字符串,然后将Y替换为下一个字符串,以此类推。
如何查找替换文本的位置:
第一:到X
第二:对Y 我尝试将
addTextChangedListener()
添加到myEditText
,并在beforeTextChanged
,beterextchanged
上获取start
,end
始终返回0
(因为我是通过编程方式替换的,不是吗?)
有什么建议吗?不确定这是否是您想要的,但我认为这听起来好像您想在编辑发生的地方进行编辑后放置到光标。如果这是您想要的,那么您可以使用以下选择方法:
final int selStart = Selection.getSelectionStart(s);
final int selEnd = Selection.getSelectionEnd(s);
试着这样使用:
myEditText.scrollTo(x,y);
我想这应该会有帮助。我的应用程序是计算器和字符串
“测试字符串测试字符串X测试字符串测试字符串Y测试字符串测试字符串测试字符串测试Z”
是公式。当用户创建一个变量时,我可以写入公式中的每个变量位置。所以我有所有的变量位置,可以滚动到另一个)它总是
返回-1
。如何处理更改前文本上的end1=et.getRight()
和更改后文本上的end2=et.getRight()
,然后end2-end1
-滚动位置?)