CHTCollectionViewWaterfallLayout を使用して滝のレイアウトを作成したいと考えています。デモで、セルの高さが固定されており、配列になっていることに気付きました。でも、今、画像のURLをもらったので画面に表示したいのですが、高さがわかりません。そのため、heightForItemAtIndexPath データソースが機能していません。ダウンロードする前に画像 URL の高さを計算する方法。または、高さを計算し、heightForItemAtIndexPath データソース メソッドでセルの高さを設定しながら、cellForItemAtIndexPath データソース メソッドで画像をダウンロードして表示できますか? どうやってするか?
質問する
209 次
1 に答える
2
画像が独自のサーバーからダウンロードされた場合は、まず画像のサイズを示すメタ データを送信し、それを使用して画像をダウンロードする前に高さを計算することをお勧めします。
画像がサーバーにない場合、最適な解決策は、対応する画像がダウンロードされているかどうかを示す BOOL 配列を追加することです。ダウンロードされている場合は高さを調整し、ダウンロードされていない場合はデフォルトの高さを使用します。
そして、画像がロードされたときに以下のメソッドを呼び出すデリゲートをセルに追加します。
- (void) ImageLoadedAtIndexPath:(NSIndexPath)indexPath {
[self.tableView beginUpdates];
[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationNone];
[self.tableView endUpdates];
}
それが役に立てば幸い。
于 2013-07-31T09:39:53.153 に答える