我正在尝试在 iOS 中创建一个包含标签和相关图像的自定义 UITableViewCell。图片需要尽可能靠近标签的后缘。
下面是到目前为止的进度图。红色区域是水平 UIStackView,我在其中放置了 UILabel(绿色)和 UIImageView(青色)。
UILabel 设置为 Lines = 0。
我已经使用了许多 UIStackView 分布和对齐属性,并且过去很好地利用了本文中概述的方法 A UIStackView Hack for Stacking Child Views Compactly .根据那篇文章中的技术,我有第三个透明 View ,它的 ContentHugggingPriority 较低,因此占用了大部分空间。这几乎可以工作,但有些东西导致标签在该固定点处换行,看起来它是总宽度的 1/3。
并非所有行都会显示图像。
有没有人对如何实现这种布局有任何其他建议?我尝试过普通的旧自动布局(没有 UIStackView),但还有其他问题
Best Answer-推荐答案 strong>
这可能就是你所追求的......
堆栈 View 被限制为顶部和底部边距、前导边距 + 12 和尾随边距 >= 12 ,具有以下设置:
Axis: Horizontal
Alignment: Top
Distribution: Fill
Spacing: 0
ImageView 的宽度和高度约束为24
标签没有约束,但有:
Content Compression Resistance Priority
Horizontal: Required (1000)
结果(顶部设置有 ImageView ,底部设置没有):
关于ios - UIStackView - 将图像定位在兄弟的边缘,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/56644237/
|