ios - 检测 UILabel 换行符。动态地将项目放入 UITableViewCell

标签 ios objective-c uitableview uilabel line-breaks

我想在填充多个 UILabel 后检测 UITableView 的每个 UITableViewCell 是否有办法检测UILabel 有换行符。因为我想动态设置它的框架。我需要这样做,因为我有一个 UILabel 位于另一个之上,而另一个下方的 UILabel 必须与另一行的每一行具有相同的距离。

我只找到了 UILabel 的属性 numberOfLines 并且我意识到根据设备(iPhone 6、6 Plus 和其他设备),UITableViewCell 变化。所以它直接影响到 UILabel 空间。我可以计算 UILabel 的长度,并根据它更改下面的 UILabel 的框架,但我不喜欢这种方式。

有什么帮助吗?

谢谢

最佳答案

您无需检测换行符即可执行此操作。你应该使用自动布局。您应该在顶部标签的底部和底部标签的顶部之间设置一个垂直间距约束——无论标签扩展到什么尺寸,这都会给它们一个固定的间距。

关于ios - 检测 UILabel 换行符。动态地将项目放入 UITableViewCell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27109114/

相关文章:

ios - self.custom View.background 颜色分配导致泄漏?

ios - 如何在不使用segue的情况下将数据从一个ViewController传递到MainViewController?

ios - 从 UIAlertController 以编程方式打开蓝牙设置

ios - 有没有办法获取 PHAsset 数组的 PHAssetResource ?

ios - 防止父 View Controller 在子 Controller 中接收 UITouch

iphone - UIButton事件“触摸保持”

objective-c - 如果不传入,NSDateFormatter 将使用什么 NSTimeZone 值?

ios - 摇动手势并准备 seuge - 开始/结束外观转换的不平衡调用

ios - 添加数据并在关闭 ImagePicker 后重新加载 CollectionView - Swift - iOS

ios - 为什么使用 xib 和自动布局时 tableviewcell 的 contentView 中有 inset?