我在ScrollView中有一个TextView。假设ScrollView的名称为s
,TextView的名称为t
。将TextView滚动到特定行
我有很多行,以显示在TextView的,并在同一时间,我想滚动视图到指定的行。
所以我这样做:
t.setText(aVeryLongString);
int y = t.getLayout().getLineTop(40); // e.g. I want to scroll to line 40
s.scrollTo(0, y);
但它不会滚动,除了第二次。看起来第一次代码完成后,ScrollView知道TextView的总高度是多少。
所以我觉得一定有什么东西迫使scrollTo调用之前计算所需要的高度。如何做到这一点(或以其他方式)?
您是否正在UI线程中运行代码? – Tughi 2009-12-22 11:01:53
这是onReceiveResult中的代码(称为另一个活动,活动放入一些数据并完成(),并接收数据)。我对android中的线程模型不够了解。 – yuku 2009-12-22 16:42:40