我有一个 Table View Cell
,其中所有内容都是 ImageView
。
如何使用我从Instagram的API 获得的图像(尺寸)动态更改表格视图单元格大小?
我很难解决,因为我正在解决两个变量:
我已经尝试过固定所有方面,但是没有用。我已经尝试左右固定,并将限制底部空间添加到容器边距,将顶部空间添加到容器边距,这不起作用。
但我无法做对。我确定它有点小我不见了。任何帮助,将不胜感激。谢谢!
我正在使用Xcode 6和iOS 8.我正在使用Storyboard。仅限纵向。
答案 0 :(得分:1)
我不知道这是否可以在故事板中完成。也许有一种方法可以在iOS 8中使用自行调整大小的单元格,但我没有找到方法,在任何情况下,这只适用于iOS 8,而不是7.无论如何,它很容易使用代码,并在故事板中设置简单的约束。只需将图像视图固定到单元格的所有四边(我在我的示例中使用8的所有边的标准边距),然后实现heightForRowAtIndexPath,
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
CGSize imageSize = [[UIImage imageNamed:self.theData[indexPath.row]] size];
CGFloat height = imageSize.height/imageSize.width * (tableView.frame.size.width - 16);
return height + 16;
}
代码中的16位代表图像视图所有边上的填充为8。如果你有你的图像视图一直到左边和右边,那么你可以消除它们。