我在自定义表格单元格中有一个ImageView,其内容模式为Aspect Fit。 当表格完全加载时,图像本身看起来很棒,它会调整大小以适应单元格的宽度,同时仍保持原始比率。 但是,表格单元格的高度与Aspect Fit内容模式从未应用于图像视图一样大。
此图像中的红色是图像视图,实际图像上方和下方的空间是我试图避免的。
当我用Aspect Fill替换Aspect Fit时,这就是同一个单元格的样子:
这就是我的意思,当我说在应用Aspect Fit之前图像视图使用图像的高度时。
我在ImageView中缺少约束或设置吗? 任何帮助表示赞赏!
答案 0 :(得分:0)
如果从服务器下载图像,则需要花费一秒或几毫秒才能下载。他们下载的时间对用户来说是显而易见的。最佳用户体验是在下载图像之前明确设置高度和宽度。如果您使用第三方API来获取图像(即facebook或youtube API),则返回将包含图像URL以及图像的高度和宽度。这样,您可以设置单元格的高度和宽度,然后等待图像下载,而不会中断或更改单元格的大小。这将是最好的方法。通过明确设置高度和宽度,您不必担心用于图像视图的内容模式。如果您明确设置该单元格中图像视图的高度和宽度,我只建议使用自定义UITableViewCell。我希望这有帮助!
我刚看到你最近的评论。您可以根据要返回的图像调整每个单元格中每个图像视图的大小。您不需要为图像视图设置固定高度。您可以根据该单元格中的图像更改每个单元格的高度。我建议在下载图像之前这样做。
如果您使用的是故事板,那么一种方法是为图像视图的高度约束创建一个出口。