我有自定义uitableviewcell
。
我想根据if条件改变它的高度。 我怎么能这样做?
我尝试在cellForRowAtIndexPath
-
if (cell.newsFeedImage.image == NULL)
{
NSLog(@"NULL");
cell.uDisplayImage.frame = CGRectMake(20, 20, 20, 20);
}
显示日志消息,但框架永远不会更改。
请帮忙。
答案 0 :(得分:1)
单元格的高度在tableView数据源方法
中设置heightForRowAtIndexPath
答案 1 :(得分:1)
尝试在heightForRowAtIndexPath
中执行此操作- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
CustomCell *cell = [self tableView:tableView cellForRowAtIndexPath:indexPath];
if (cell.newsFeedImage.image == nil) {
cell.uDisplayImage.frame = CGRectMake(20, 20, 20, 20);
}
else return 40;
}
答案 2 :(得分:0)
比这复杂一点。
这些问题在这里得到了很好的回答:Using Auto Layout in UITableView for dynamic cell layouts & variable row heights