2010-09-17 13 views
6

Mam ScrollView, który ma dwa ukryte obrazy, jeden u góry i jeden u dołu. Pomiędzy nimi jest grono widocznych treści.Android: Wykrywanie po przewinięciu ScrollView i ponownym odbiciu?

Co należy zrobić, aby te obrazy były domyślnie ukryte, ale podczas przewijania w górę lub w dół można je zobaczyć podczas przewijania. Ale gdy tylko przerwiesz przewijanie, powinieneś powrócić do widocznego obszaru, aby ukryte obrazy nie były wyświetlane.

Zasadniczo próbuję naśladować funkcję przewijania podskoków iPhone UIScrollView.

Mam mój ScrollView wszystkie ustawienia i zrobić przewijanie na początku, aby ukryć górny ukryty obraz. Teraz wszystko, co muszę zrobić, to wykryć, kiedy przewijanie się skończyło, ustalić pozycję Y i sprawdzić, czy wyświetlany jest ukryty obraz. Jeśli tak, po prostu programowo przewinąłbym widok, aby ukryty obraz był ukryty.

Mam nadzieję, że wszystko to ma sens.

Tak czy inaczej, wiem, jak programowo przewinąć ScrollView. Teraz potrzebuję jakiegoś wywołania zwrotnego, aby mi powiedzieć, kiedy ScrollView zakończył przewijanie, a także sposób na uzyskanie aktualnej pozycji "ScrollView" w "Y". Czy są jakieś metody, których mogłem użyć?

Przeglądałem dokumenty ScrollView, ale nic nie wyskoczyło na mnie. Nadal nie znam schematów nazewnictwa Androida, więc może gdzieś przegapiłem coś oczywistego.

W każdym razie, każda pomoc byłaby doceniana tutaj. Twoje zdrowie.

Odpowiedz

4

Można użyć numeru OnTouchListener, aby wykryć, kiedy użytkownik naciśnie/zwolni listę.

Można również użyć metody onScrollStateChanged klasy OnScrollListener (najprawdopodobniej w połączeniu z dotykowym słuchacza) w celu wykrycia zmian w SCROLL_STATE - gdy lista zatrzymał przewijanie stan zmieni się ze stanu, który jest nieSCROLL_STATE_IDLE do SCROLL_STATE_IDLE.

Alternatywnie, jeśli używasz wersji 2.3 lub nowszej, możesz użyć numeru OverScroller, aby uzyskać pożądany efekt (patrz: Modifying Android OverScroll, aby dowiedzieć się, jak zmienić efekt przewijania na taki jak iPhone).

+13

Nie ma OnScrollListener dla ScrollView – Frank

Powiązane problemy