Oto film o tym, co się dzieje: https://imgflip.com/gif/kgvcqUITableView nie będzie odbijać po przewinięciu w dół przeszłości ekran
Zasadniczo, jeśli komórki przejść obok dolnej krawędzi ekranu, nie będzie odbijać. Próbowałem aktualizacji contentSize
z tableView
, ale to nie wydaje się być problem. Upewniłem się również, aby zadeklarować rowHeight
i nadal nie ma szczęścia. Na koniec upewniłem się, że właściwości bounce
dla tableView
są ustawione prawidłowo.
Cześć chłopaki przepraszam za nie oddanie się kod, to jest tutaj:
// data source
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"frame height: %f", tableView.frame.size.height);
NSLog(@"content size height: %f", tableView.contentSize.height);
static NSString *CellIdentifier = @"HabitCell";
HabitTableViewCell *cell = (HabitTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
cell.viewController = self;
cell.delegate = self;
// edit cell
return cell;
}
NSLogs
wracają: 568 i 400 odpowiednio. Czy będzie to przyczyną problemów? Ponadto nie zastąpiłem scrollViewDidScroll
.
Zaimplementowane danych Metody Źródło
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return the number of rows in the section.
return [self.habits count];
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if ([indexPath isEqual:_expandIndexPath]) {
return 450 + heightToAdd;
}
return 100;
}
Trudno określić, co się dzieje bez rzeczywistego kodu ... Czy aktualizujesz 'contentOffset' ręcznie ręcznie w dowolnym miejscu? Wygląda to na '=' zamiast '==' problem: ale to prawdopodobnie tylko daleko posunięte założenie. Czy zastąpiłeś 'scrollViewDidScroll'? –
Czy ustawiłeś również rozmiar klatki? –
Pokaż nam jakiś kod ... –