【问题标题】:UILabel is growing only after orientationUILabel 只有在定向后才会增长
【发布时间】:2019-07-26 12:59:03
【问题描述】:

我有行数为 0 的 uilabel,并将 4 条边的编程约束设置为超级视图。当我运行时,我看到标签没有显示多行,但是在我第一次定位设备后,它开始显示多行,有什么帮助吗?

private let headerLabel: UILabel = {
    let label = UILabel()
    label.translatesAutoresizingMaskIntoConstraints = false
    label.numberOfLines = 0
    return label
}()

    let leading = headerLabel.leadingAnchor.constraint(equalTo: contentView.leadingAnchor)
    let top = headerLabel.topAnchor.constraint(equalTo: contentView.topAnchor)
   let trailing = headerLabel.trailingAnchor.constraint(equalTo: contentView.trailingAnchor)
    let bottom = headerLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor)
    NSLayoutConstraint.activate([leading, top, trailing, bottom])

【问题讨论】:

  • 听起来很奇怪。您有任何设置标签的代码吗?
  • 添加到问题中
  • 您的约束未激活...您必须致电leading.activate = true
  • 不,我也添加了约束 NSLayoutConstraint.activate([leading, top, trailing, bottom])
  • 另外,你在headerLabel 上设置了约束,而你的标签名称是lbl,当你显示部分代码时真的很混乱。另外,您的 superView 可能存在问题..它不够大。可能要打开 viewHiarchy 并检查高度?

标签: ios swift autolayout uilabel


【解决方案1】:
  • 将标签水平和垂直固定在超级视图的中间。
  • 添加前导尾随上下约束以大于等于 10
  • 将行数设置为 0

  • 当文本足够大时,您甚至可以让标签滚动。

【讨论】:

  • 这不是解决方案
【解决方案2】:

我只是多给 50 个 topAnchor。因此,您可以在状态栏下方看到标签。

private let lbl: UILabel = {
    let label = UILabel()
    label.translatesAutoresizingMaskIntoConstraints = false
    label.numberOfLines = 0
    return label
}()

override func viewDidLoad() {
    super.viewDidLoad()

    lbl.text = "The quick brown fox jumps over the lazy dog. "
    view.addSubview(lbl)

    let leading = lbl.leadingAnchor.constraint(equalTo: view.leadingAnchor)
    let top = lbl.topAnchor.constraint(equalTo: view.topAnchor, constant: 50)
    let trailing = lbl.trailingAnchor.constraint(equalTo: view.trailingAnchor)
    let bottom = lbl.trailingAnchor.constraint(equalTo: view.trailingAnchor)

    let constraintArray = [leading,top,trailing,bottom]

    for item in constraintArray {
        item.isActive = true
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-30
    相关资源
    最近更新 更多