2013-07-31 46 views
0

我想使用CHTCollectionViewWaterfallLayout創建一個瀑布佈局。我在演示中注意到單元格高度是固定的,並且在一個數組中。但是,現在,我得到了一個圖像網址,我想在屏幕上顯示它,但高度並不知道。所以,heightForItemAtIndexPath數據源不起作用。如何在下載之前計算一些圖片網址的高度。或者,我可以在cellForItemAtIndexPath數據源方法中下載並顯示圖像,同時計算height並在heightForItemAtIndexPath數據源方法中設置單元格高度?怎麼做?從互聯網下載圖像時計算UICollectionViewCell高度

回答

2

如果圖像是從你自己的服務器上下載,那麼我會建議發送元數據首先顯示的圖像尺寸,並使用它下載圖像之前計算的高度。

如果圖像是不是你的服務器上,那麼最好的解決辦法是增加BOOL數組,指示相應的圖像是否被下載與否,如果下載,調整高度,如果沒有,使用默認的高度。

,並添加一個委託到您的它調用時加載圖像下面的方法:

- (void) ImageLoadedAtIndexPath:(NSIndexPath)indexPath { 

    [self.tableView beginUpdates]; 
    [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationNone]; 
    [self.tableView endUpdates]; 

} 

希望它能幫助。

+0

圖像在cellForItemAtIndexPath中下載。這意味着,高度已經計算出來了,只有圖像是懶加載的。 –

+0

檢查更新的答案。 – MuhammadBassio

+0

將reloadRowsAtIndexPaths更改單元格高度? –

相關問題