2015-09-12 28 views
7

Kiedyś miałem UITableView w UIViewController. Chciałbym umieścić UIRefreshControl na UITableView i na ostatnim kawałku przesuwając w dół, aby odświeżyć, UITableView szybko zeskoczył.Powoli przesuwając w dół, aby odświeżyć na refreshControl UITableViewController powoduje, że widok zeskoczyć na dół

Wszystkie odpowiedzi wyrażone tak samo: Nieudokumentowane/nieoczekiwane zachowanie (możliwość użycia UIRefreshControl z UITableView) daje takie wyniki. Aby temu zaradzić, użyłem ContainerView do osadzenia kontrolera UITableViewController w kontrolce UIViewController.

Mam prawie rozwiązałem ten problem, ale ... jeśli przeciągnę w dół wystarczająco wolno, problem będzie nadal występował.

Czy istnieje sposób na złagodzenie tego, czy jestem zmuszony z tym żyć?

wideo: http://streamable.com/8suq

Wskazówka pierwsze kilka razy przesuń w dół wyglądać absolutnie w porządku, bo robię to wystarczająco szybko, ale pod koniec filmu, ja naprawdę go spowolnić i można zauważyć skok w pytaniu.

+0

http://stackoverflow.com/questions/31011734/why-uirefreshcontrol-jumping/31269495 # 31269495 To działa dobrze, ale szukam lepszego sposobu. –

+1

Twój link wideo jest blokowy, więc zmień go na –

Odpowiedz

3

Zauważam, że w tym filmie masz kursor myszy. Nie można oceniać wydajności grafiki dla animacji w symulatorze, nie będzie ona działać tak samo jak na rzeczywistym urządzeniu.

Na urządzeniu uzyskasz znacznie lepszą wydajność i znacznie lepszą liczbę klatek na sekundę. Widziałem, że jest to bardzo zauważalne podczas używania SpriteKit podczas nauki tworzenia gier.

Użyłem tylko UIRefreshControl kilka razy wcześniej w UITableViewController i nie zauważyłem żadnych poważniejszych problemów wcześniej. Od tego czasu używam innych bibliotek, takich jak https://github.com/samvermette/SVPullToRefresh.

Wypróbuj aplikację na urządzeniu fizycznym, a w międzyczasie postaram się replikować problem i dodać moje wyniki tutaj

+0

Właściwie to natknąłem się na to na urządzeniu i użyłem symulatora, więc mogłem nagrać to, co dzieje się tutaj. Od tego czasu naprawiłem i nauczyłem się rejestrować rzeczywisty ekran, więc nie używam już symulatora. To było chwilę temu, więc nie pamiętam mojej poprawki. – David

+0

@ David, jeśli to naprawiłeś, mógłbyś podzielić się swoją wiedzą? Wygląda na to, że inni również mają tę kwestię (sądząc po premii dodanej do tego pytania) – SergGr