如何在默认样式的 UITableViewCell 中为我还没有的图像保留空间

Posted

技术标签:

【中文标题】如何在默认样式的 UITableViewCell 中为我还没有的图像保留空间【英文标题】:How can reserve space for an image I don't yet have in a default-style UITableViewCell 【发布时间】:2011-01-26 19:01:01 【问题描述】:

我正在尝试使用带有 UITableViewCellStyleDefault 的 UITableViewCell 来显示一个单元格,该单元格最终将在其 imageView 中包含一个图像(从互联网加载后)。

但是,当我尝试将单元格的 imageView.frame 设置为正确的大小时,单元格只是不使用为图像视图保留空间(文本左对齐而不是在图像会消失。)

有没有办法以编程方式将图像视图设置为特定大小而其中不包含图像?

我宁愿避免继承 UITableViewCell 或包含空白图像。

【问题讨论】:

【参考方案1】:

看起来如果您想使用 imageView 框架本身来保留您将需要空白图像的空间。过去,我使用加载图像作为占位符。也许您可以尝试通过填充空间直到图像加载或调整其位置来调整 detailTextLabel。我会推荐一张空白/正在加载的图片。

imageView 返回图片视图 表格单元格。 (只读)

@property(非原子,只读,保留) UIImageView *imageView

讨论

返回图像视图(UIImageView 对象)的表视图,其中 最初没有图像集。 如果 图像已设置,它出现在左侧 单元格的一侧,在任何标签之前。 UITableViewCell 创建图像视图 创建单元格时的对象。

【讨论】:

我就是这么想的。看起来 imageView 调用了 sizeToFit ,因此任何帧更改都不会生效。事实证明,我希望自定义其他行为,因此我将创建 UITableViewCell 的子类。

以上是关于如何在默认样式的 UITableViewCell 中为我还没有的图像保留空间的主要内容,如果未能解决你的问题,请参考以下文章

UITableViewCell 样式字幕多行不起作用

如何在 TableView 的行中应用不同的单元格样式

UITableView - UITableViewCell.Style .subtitle - 如何使 UIImageView 循环? - 斯威夫特 5

UITableViewCell 选择样式更改所有子视图的背景颜色

在 UITableViewCell 中,如何更改单击的按钮粗体的样式,而其他单元格保持静止?

如何在通过 UITableViewCell 中的 XIB 加载的子视图中对标签和 UILabels/UIImageViews 进行初始样式设置