В scrollView для Android, как вы находите самую низкую позицию в scrollview, чтобы затем использовать метод scrollTo(x,y)
для прокрутки вправо. Мне нужно фактическое числовое значение. Использование метода getHeight()
никогда не возвращает правильное значение. Полоса прокрутки иногда прокручивается до конца, а иногда и не достигает ее. В scrollview есть линейное расписание с текстовым просмотром. Должно быть что-то, что мне не хватает?Как найти нижнюю прокручиваемую позицию в ScrollView?
ответ
Спасибо за ответ. Я нашел быстрый хак, если кому-то это интересно.
sView.fullScroll(View.FOCUS_DOWN);
sView.fullScroll(View.FOCUS_DOWN);
y = sView.getScrollY();
sView.fullScroll(View.FOCUS_UP);
Это спустится вниз, чтобы прокрутить, собрать y, а затем снова прыгнуть вверх. Это происходит так быстро, что не видно, и каждый раз вы получите нижнее значение y. Вам нужно дважды сфокусировать фокус, иначе y вернет 0.
Если вы хотите просто прокрутить страницу до конца, вы должны просто использовать fullScroll (ScrollView.FOCUS_DOWN). Если вам требуется особенно численное значение в зависимости от высоты прокрутки, вам придется подклассифицировать вид прокрутки и переопределить onSizeChanged, что даст вам фактическую численную высоту. Имейте в виду, что onSizeChanged будет вызываться только после onResume и не обязательно будет вызываться каждый раз, когда ваша активность возобновится.
Часть причины, по которой вы иногда прокручиваете до конца, а иногда нет, вероятно, из-за состояния гонки. Иногда ваш свиток происходит до того, как произошли другие важные вещи (например, заполнение вида), поэтому он ничего не делает.
Try размещения вызовов на обработчике ваш взгляд скроллинга:
yourScrollView.post(new Runnable(){
@Override
public void run(){
yourScrollView.fullScroll(ScrollView.FOCUS_DOWN);
}
};
Иногда даже добавление короткая задержка может помочь:
yourScrollView.postDelayed(new Runnable(){
@Override
public void run(){
yourScrollView.fullScroll(ScrollView.FOCUS_DOWN);
}
}, 200);
- 1. Как найти прокручиваемую позицию scrollview динамически в Android?
- 2. Как найти нижнюю позицию ScrollView для Android в React Native
- 3. получить нижнюю позицию экрана
- 4. RecyclerView: перейдите в позицию, не прокручиваемую до
- 5. В jQuery, как получить нижнюю позицию браузера?
- 6. ScrollView внезапно меняет свою позицию
- 7. удалить нижнюю раскладку прокрутки scrollview
- 8. Найдите нижнюю позицию динамического управления
- 9. ScrollView, как прокручивать нижнюю часть другого вида
- 10. Как сохранить позицию в ScrollView или ListView?
- 11. Не удалось установить позицию scrollview
- 12. Как сделать прокручиваемую прокрутку раскадровки?
- 13. получить нижнюю и правую позицию элемента
- 14. Как переопределить начальную позицию Android ScrollView?
- 15. Как получить последнюю позицию прокрутки, scrollview
- 16. Роль Azure Worker Уменьшить нижнюю позицию
- 17. Как найти позицию uiscrollview при прокрутке
- 18. Как найти нижнюю границу в отсортированном векторе
- 19. Как включить прокручиваемую консоль?
- 20. Сохранить позицию Scrollview когда ориентация изменяется
- 21. Как найти позицию слова (не позицию символа) в строке
- 22. Как найти конечную позицию счетчика?
- 23. Как найти начальную позицию UIImageView
- 24. Как создать масштабируемую, прокручиваемую прокручиваемую карту с выбираемыми сетками?
- 25. найти нижнюю позицию элемента HTML и положить внутренний элемент в нижней части родительского
- 26. Найти позицию subview в представлении
- 27. найти позицию символа в подстроке
- 28. Найти позицию в анонимном списке
- 29. Нужно найти позицию @ в результате
- 30. Найти позицию элемента в списке