7
Dodaje nową sekcję (sekcja zawiera 3 komórki) u góry UITableView podczas PRZEWIJANIA GÓRY.UITableView wstawianie sekcji u góry podczas przewijania
[_mainTable beginUpdates];
[_mainTable insertSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationNone];
[_mainTable endUpdates];
Sekcja wsuwa się prawidłowo. Ale zajmuje mi górę tabeli, np. Komórka 0 lub wiersz 0. Chcę, aby ta transakcja była płynna. Mogę wstawić
[_mainTable scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:1 inSection:1] atScrollPosition:UITableViewScrollPositionBottom animated:NO];
po endUpdates, ale pokazuje szybkie szarpnięcie, ponieważ zajmuje ona górę tabeli, a następnie nagle przewiń ją do ostatniej pozycji.
Jak mogę to zrobić gładko.
Dzięki
Dziękuję bardzo dużo. Walczyłem z tym długo. – Mann
Chociaż powyższy kod działa jak urok, ale dla mojego osobistego zrozumienia nie dostałem punktu 5. Dlaczego potrzebujemy tu starego prostokąta? Byłbym bardzo wdzięczny, gdybyś to wyczyścił – Mann
@mann Próbowałem tylko zobaczyć, jak bardzo jeden z widocznych wierszy przesunął się w dół. Tak więc otrzymuję rect dla widocznego rzędu przed wstawieniem i ponownie, po, a następnie używam różnicy między wartościami "y", aby dostosować 'contentOffset' powinien być taki, aby wiersz pojawiał się w tym samym miejscu co poprzednio. – Rob