ScrollView alawys прокручивается на дно

Я определил scrollview с texteedit в моем макете:

<ScrollView android:fillViewport="true" android:layout_marginBottom="50dip" android:id="@+id/start_scroller" android:layout_height="fill_parent" android:layout_width="fill_parent" android:fadingEdge="none"> <TextView android:id="@+id/text" android:layout_width="fill_parent" android:layout_height="wrap_content" > </TextView> </ScrollView> 

Я добавляю текст в этот ScrollView следующим образом:

 public void writeToLogView(String textMsg) { if (text.getText().equals("")) { text.append(textMsg); } else { text.append("\n" + textMsg); scroller.scrollBy(0, 1000000); } } 

Как вы можете видеть, я добавляю текст и пытаюсь прокрутить до конца ScrollView. К сожалению, это не сработало. Он прокручивается вниз, но не всегда, и не всегда на дно. Любые намеки?

Или после изменения размера вида в scrollView используйте:

 scroller.post(new Runnable() { public void run() { scroller.fullScroll(ScrollView.FOCUS_DOWN); } }); 

После добавления текста попробуйте использовать размеры вашего TextView, чтобы рассчитать, где вы должны прокручиваться, а не константу, например:

 scroller.post(new Runnable() { public void run() { scroller.scrollTo(text.getMeasuredWidth(), text.getMeasuredHeight()); } }); 

Для тех, кто использует аннотации Android , вы можете сделать это следующим образом:

 @ViewById ScrollView myScrollView; @AfterViews protected void init() { scrollToEnd(); } @UiThread(delay=200) void scrollToEnd() { myScrollView.fullScroll(ScrollView.FOCUS_DOWN); } 
Intereting Posts
Eclipse IDE – графическая компоновка Android и макет XML рядом друг с другом Справка в Android-приложении ViewPager и FragmentPagerAdapter с фрагментами (не поддерживает библиотеку) Пример android.support.v4.widget.SearchViewCompat? Каковы хорошие стратегии обработки асинхронных обратных вызовов на Android? Как решить эту ошибку "com.android.internal.telephony не может быть разрешен для типа" в android Пользовательский TextView не показывает текст, но показывает только фоновый RxJava – Целевые запросы и обновление пользовательского интерфейса Android.R.simple_spinner_adapter не может быть разрешен Зависимости от компиляции с несколькими вкусами в градиенте Внедрение OAuth2 с учетными данными пароля владельца ресурса на Android Аварийная авария на Android при возобновлении Как я могу изменить тему Головой Темной / Свет из приложения? Действие масштабирования в android с помощью appium-python-client Изменить размер: Android Radio Button