Например, у меня есть такой макет:
<ScrollView>
<LinearLayout>
<LinearLayout>
...
</LinearLayout>
<LinearLayout>
...
</LinearLayout>
<LinearLayout>
<TextView>
</TextView>
</LinearLayout>
</LinearLayout>
</ScrollView>
Мой TextView имеет длинный контент. Теперь я могу прокрутить ScrollView вручную до конца содержимого TextView. В коде я пишу:scrview.scrollTo(0, 800);
, с scrview мой ScrollView. Он должен прокручиваться до середины содержимого TextView. Но при запуске он прокручивается только до начала TextView и не может прокручивать содержимое TextView.
Кто-нибудь знает, что вызывает эти проблемы?
РЕДАКТИРОВАТЬ:Я нашел это. Похоже, я вызываю scrollTo слишком рано. Использование
scrview.post(new Runnable() {
public void run() {
scrview.scrollTo(0, 800);
}
});
вместо этого, и это работает. Опубликовал ответ для тех, кто сталкивается с такой же проблемой.