2015-04-21 14 views
11

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; 
} 
+0

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'? –

+2

Czy ustawiłeś również rozmiar klatki? –

+2

Pokaż nam jakiś kod ... –

Odpowiedz

2

Poprawiono: miałem wezwanie do scrollToRowAtIndexPath w moim sposobie UIPanGestureRecognizer. Usunięto go i teraz działa idealnie.

Powiązane problemy