我々からの細胞を得ることができます:私は、セルのタグやindexPathを知っていれば、それはそこにcellForRowAtIndexPath:
を呼び出すことなく、指定されたセルを取得する方法です目的C iOSでcellForRowAtIndexPathを呼び出さずにセルを取得する方法は?
UITableViewCell * cell = [self tableView:tableVie cellForRowAtIndexPath:indexPath]
それはcellForRowAtIndexPath:
メソッドを呼び出すのだろうか?
私は、各セルの高さをリセットする方法のcellForHeightAtIndexPathのセルを取得したいcellForRowAtIndexPath:indexPath
を呼び出すことはできませんなぜ、いくつかの理由を追加します。 :
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell * cell = [self tableView:tableView cellForRowAtIndexPath:indexPath];
CommentsListResponseDataModel * model = self.liveCommentData[indexPath.row -1];
if (model.viewHeight > 0) {
return model.viewHeight;
} else {
if (model.parentComment) {
CommentParentCell * cc = (CommentParentCell *)cell;
return cc.viewHeight;
} else {
CommentSingleCell * cc = (CommentSingleCell *)cell;
return cc.viewHeight;
}
}
}
}
しかし、これは死んでループになるだろうそれをすべてcellForRowAtIndexPath:indexPath
とcellForRowAtIndexPath:indexPath
がcellForHeightAtIndexPath:indexPath
を呼び出そう、あなたのViewControllerにグローバル
UITableView *_tableView;
または@IBOutlet weak UITableView *_tableView;
ようなものとしてあなたのUITableViewを宣言? – Desdenova@Desdenovaモデルをcellに渡し、モデルのsetterメソッドを(cellForRowAtIndexPath内に)設定するようにオーバーライドします。cellForRowAtIndexPathが何度も呼び出されると、セルを複数回設定します。 – Neko
[セルフォロー外のテーブルビューコンテンツへのアクセス]の可能な複製(https://stackoverflow.com/questions/26709483/accessing-tableview-content-outside-cellforrow) – Himanth