scrollView.getScrollY() всегда возвращает 0

Я хочу знать, когда мой ScrollView прокручивается вверх. Вот что я пробовал:

  scrollView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {

            @Override
            public void onScrollChanged() {
                int scrollX = scrollView.getScrollX(); //for horizontalScrollView
                int scrollY = scrollView.getScrollY();
                Log.d("TagFragment", "scrollY" + scrollY);
                mainFragment.setCanPullToRefresh(scrollY == 0);
            }
        });

проблема в том, что scrollY почти всегда равен 0, поэтому он почти всегда возвращает true. Некоторые значения верны:

Логкат:

D/TagFragment﹕ scrollY242
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY244
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY245
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY0
D/TagFragment﹕ scrollY246
D/TagFragment﹕ scrollY0

как я могу знать на 100%, что такое смещение?


person maysi    schedule 10.08.2015    source источник
comment
проверьте это: stackoverflow.com/questions/3327087/   -  person The Badak    schedule 10.08.2015
comment
Делал так, но не помогло.   -  person maysi    schedule 10.08.2015