2014-09-29 40 views
0

我有我的TableView與帖子。該表應該爲單元格計算高度,並且它在我的模擬器(iPhone 5S)中正確執行,但是在真實設備(也是5S)中,它只計算應用程序加載的一次,並且不會再次重新計算它。因此,我有我的帖子顯示不正確的高度。可能是什麼問題呢?heightForRowAtIndexPath並不總是在真實設備上調用

-(CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ 
    VKPost* currentPost = _posts[indexPath.row]; 
    return [VKPostCell actualHeightForCellWithPost:currentPost]; 
} 

更新:它似乎並不只在設備與iOS工作下則8

+0

設備和模擬器是否運行相同的iOS版本?嘗試刪除設備上的應用程序並在Xcode上運行Clean。 – Alak 2014-09-29 05:06:32

+0

嘗試了很多次,沒有變化。該設備的版本是7,模擬器的版本是8.如果是問題,它會非常愚蠢。 *開始下載7版本模擬器* – 2014-09-29 05:12:49

+0

你是說'heightForRowAtIndexPath'根本不叫?在設備上 – 2014-09-29 05:20:54

回答

0

你檢索的_postsWeb服務或數據的任何地方?調用heightForRow時,_posts可能爲空。嘗試在您的中獲取完成塊,以獲取有關_posts方法的數據,並在完成時調用[self.tableView reloadData];

+0

是的,我從Web服務中檢索數據。我認爲我有這個電話。(對不起,代碼不是我的) ' - (void)loaderDidFinishedloading:(NSArray *)posts { [_posts addObjectsFromArray:posts]; [_tableView reloadData]; } ' btw我發現它只在ios7中有效,在ios8中它正常工作。 – 2014-09-29 10:51:55