Android ScrollView scrollTo () не работает с TextView?

Например, у меня есть такой макет:

<ScrollView> <LinearLayout> <LinearLayout> ... </LinearLayout> <LinearLayout> ... </LinearLayout> <LinearLayout> <TextView> </TextView> </LinearLayout> </LinearLayout> </ScrollView> 

Мой TextView имеет длинный контент. Теперь я могу прокручивать ScrollView вручную до конца содержимого TextView. В коде я пишу: scrview.scrollTo(0, 800); , С scrview – мой ScrollView. Он должен прокручиваться до середины содержимого TextView. Но при запуске он прокручивается до начала TextView и не может прокручивать содержимое TextView.

Кто-нибудь знает, что вызывает эти проблемы?

EDIT: Я нашел его. Похоже, я слишком скоро позвоню в scrollTo. С помощью

 scrview.post(new Runnable() { public void run() { scrview.scrollTo(0, 800); } }); 

А это работает. Отправленный ответ для любого, получающего такую ​​же проблему.

Solutions Collecting From Web of "Android ScrollView scrollTo () не работает с TextView?"

Прежде всего, если все ваши LinearLayouts имеют одинаковую ориентацию, почему вы не просто создаете ее только один раз? Если я не ошибаюсь, ScrollView может иметь только 1 ребенка (1 прямой ребенок). Возможно, это, вероятно, причина ваших проблем. Однако, если вам все еще нужны эти 3 LinearLayouts, вы можете создать FrameLayout в качестве родителя, чтобы удерживать их и сделать этот FrameLayout дочерним элементом ScrollView

Я нашел это. Похоже, я слишком скоро позвоню в scrollTo. С помощью

 scrview.post(new Runnable() { public void run() { scrview.scrollTo(0, 800); } }); 

А это работает. Отправленный ответ для любого, получающего такую ​​же проблему.