2013-06-06 3 views
0

Я реализовал ListView в своем приложении и работал над onScrollListener. ListView работает нормально и в методе onScroll() onScrollListener, я пытаюсь показать прогрессбар, когда пользователь прокручивается вниз.Android: ListView onScrollListener не перестает слушать

Проблема заключается в том, что слушатель не прекращает прослушивание, и на экране появляется многократная индикация загрузки, если пользователь пытается прокрутить еще больше. Я не знаю, как это решить. Я хочу, чтобы onScrollListener прекратил слушать, когда показывает индикатор прогресса.

Пожалуйста, помогите

list.setOnScrollListener(new OnScrollListener() { 
    @Override 
    public void onScrollStateChanged(AbsListView view, int scrollState) { 

    } 

    @Override 
    public void onScroll(AbsListView view, int firstVisibleItem, 
       int visibleItemCount, int totalItemCount) { 
     if (list.getLastVisiblePosition() == list.getAdapter().getCount() - 
         && list.getChildAt(list.getChildCount() - 1).getBottom() <= list.getHeight()) { 
       ProgressBar pb = new ProgressBar(getActivity()); 
       pb.setLayoutParams(pbParams); 
       linearLayout.addView(pb); 
     } 
    } 
}); 

Заранее спасибо

ответ

1

Разве вы не можете просто проверить, если уже есть прогресс бар и не добавить еще?

+0

Я хочу загрузить данные с веб-сайта в фоновом режиме. Таким образом, если progressbars продолжают добавлять, это также означает, что на веб-сайте будет несколько запросов –

+2

@LalithMohan. Я бы добавил диалоговое окно Progress во время загрузки, которое блокирует пользовательский интерфейс из других событий прокрутки. Пользователь должен дождаться загрузки компилятора или сбоя или нет соединения ... –

+0

@matheszabi Это хорошая альтернатива, если это не работает для меня –

Смежные вопросы