2017-05-10 41 views
0

當我試圖重新加載特定的部分表視圖自動滾動到頂部方向,我不明白髮生了什麼?我用下面的代碼。當我點擊任何按鈕時,全表視圖滾動到頂部方向。如何重新加載UITableview中的特定部分?

 [_moviesDetailTableview beginUpdates]; 
     [_moviesDetailTableview reloadSections:[NSIndexSet indexSetWithIndex:1]withRowAnimation:UITableViewRowAnimationNone]; 
     [_moviesDetailTableview endUpdates]; 
+3

什麼是代碼中的問題?請詳細說明你的問題。 –

+0

@Yuvraj Singh您可能會使用estimatedRowHeigh,它可能與您的表的實際高度不同,因此通常會出現此問題。 –

+0

它發生在ios 8上嗎? – Nick

回答

0

而且你可以存儲你的tableview的content offset。並且可以這樣做,

GPoint contentOffset = _moviesDetailTableview.contentOffset; 
[_moviesDetailTableview beginUpdates]; 
[_moviesDetailTableview reloadSections:[NSIndexSet indexSetWithIndex:1]withRowAnimation:UITableViewRowAnimationNone]; 
[_moviesDetailTableview endUpdates]; 
[_moviesDetailTableview layoutIfNeeded]; 
[_moviesDetailTableview setContentOffset:contentOffset]; 
1

試試這個代碼,

[self.tableView reloadSection:0 withRowAnimation:UITableViewRowAnimationNone]; 

- (void) reloadSection:(NSInteger)section withRowAnimation:(UITableViewRowAnimation)rowAnimation { 
    NSRange range = NSMakeRange(section, 1); 
    NSIndexSet *sectionToReload = [NSIndexSet indexSetWithIndexesInRange:range];          
    [self reloadSections:sectionToReload withRowAnimation:rowAnimation]; 
}