我有一个填充了500多个单词的TextView,我希望以编程方式将内容垂直滚动到某个短语。我以为我用tv.scrollTo(x,y)解决了这个问题,但是尽管滚动到了正确的位置,我再也无法手动向后滚动回到位置。就好像以前的单词不再在视图中一样。
int offset = tv.getText().toString().indexOf("the text i wish to scroll to");
tv.scrollTo(0, tv.getLayout().getLineTop(tv.getLayout().getLineForOffset(offset)));
我也试过
tv.scrollTo(0, tv.getLayout().getLineTop(tv.getTop() + tv.getLayout().getLineForOffset(offset)));
注意我的TexView不在ScrollView容器中,所以我不是试图在滚动视图中滚动电视,而是在电视本身内垂直滚动文本。就像用户使用他们的手指一样。
那么根据特定的文本内容将textview滚动到某个位置的正确命令/方法是什么呢?仍然允许用户在找到的位置之前手动滚动回文本视图中的文本?