Próbuję zaimplementować stronicowanie dla niestandardowych stron w UITableView. To, co próbuję osiągnąć, to wyrównanie górnej części aktywnej komórki z górną krawędzią tablicy w widoku z góry, a jednocześnie wyświetlenie górnej części następnej komórki u dołu tabeli Widok (aby skłonić użytkownika do przewinięcia i zobaczenia więcej komórki).UITableView z niestandardowym zachowaniem podobnym do stronicowania
Moje komórki mają równą wysokość.
Jeśli ustawię wartość paging=YES
, spowoduje to niewielkie przesunięcie, które rośnie wraz z przeglądaniem stron. Wynika to z tego, że mój tableView jest nieco wyższy niż pojedyncza komórka, a wysokość komórki/rozmiar strony nie są wyrównane.
Próbowałem różnych rzeczy z włączoną obsługą stronicowania. Próbowałem ustawić rozmiar tableView na wysokość komórki, ale następnie wyłączyć przycinanie i maskowanie, aby użytkownik mógł nadal widzieć następną komórkę. To nie działa, ponieważ następna komórka jest dodawana do podstawowego scrollView w ostatnim ms zanim komórka przewinie się do obwiedni tabeli tableView.
Następnie zacząłem wdrażać różne metody delegatów scrollView, aby naśladować zachowanie stronicowania - nie wydaje mi się, żeby to się udało.
mam, między innymi, próbował coś takiego:
- (void) scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
{
float cellHeight = [myCell rowHeight];
int index = floorf(scrollView.contentOffset.y/cellHeight);
*targetContentOffset = CGPointMake(targetContentOffset->x, targetContentOffset->y = (index * cellHeight));
}
Chociaż rodzaj robi słusznie, że zachowuje się jak nic Scrollview/Tableview z stronicowania włączone.
Znalazłem kilka postów tutaj od ludzi próbujących osiągnąć to samo, ale odpowiedzi cierpią z powodu tego samego "non-native-snap-feel", że cokolwiek próbowałem sam robi.
Dzięki za udzieloną pomoc.
iOS> = 5,0
czy to działa? – aqs
@aqs sorry sorry, nigdy tak naprawdę nie działał wystarczająco dobrze, aby pozować jako paginacja. – RickiG
nieważne. Wziąłem ten https://github.com/100grams/HGPageScrollView i zmodyfikowany, aby przewinąć w pionie. służy mojemu celowi – aqs