Android ScrollView переходит вокруг при изменении размеров

У меня есть ScrollView, который содержит количество других представлений (TextViews, ImageViews, и т.д.). ScrollView более высок, чем экран. У меня есть AsyncTask, который обновляет детей ScrollView на основе http ответа.

Я обнаружил интересное поведение, которое я не могу выяснить, как работать вокруг. Если я установил какую-либо детскую видимость для Просмотра. НЕВИДИМЫЙ как часть AsyncTask.onPostExecute (), все хорошо работает.

Однако, если я установил какую-либо детскую видимость для Просмотра. УВЕДЕННЫЙ, ScrollView спрыгивает от вершины, когда onPostExecute () называют. Точно, как далеко, кажется, варьируется. Я предполагаю, что передача ScrollView заставляет это прокручивать далеко от вершины по некоторым причинам.

Таким образом, вопрос: существует ли способ или предотвратить или работать вокруг этого поведения?

PS. Используя ScrollView.jump (FOCUS_UP), поскольку обходное решение не идеально, так как это вынудит пользователя к вершине, даже если они намеревались прокрутить вниз.

Править: На самом деле я был неправ. Проблема не была с дочерним представлением, отмечаемым уведенный, проблема была с одноуровневым представлением, отмечаемым уведенный и изменяемый ScrollView. Мой ScrollView в LinearLayout, который также содержит Кнопку. Когда кнопка установлена на УВЕДЕННЫЙ, ScrollView изменен для занимания свободного места, заставив ее прокрутить далеко от вершины. Другая причина, все еще ища обходное решение, хотя, если это возможно.

5
задан emmby 15 June 2010 в 22:40
поделиться