Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何滚动到EditText中的某些字符_Android_String_Scroll_Android Edittext_Horizontalscrollview - Fatal编程技术网

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
-滚动位置?)