如何在swift中以编程方式为 UILabel提供动态高度?


为swift中的UILabel提供动态高度,我们可以使用UILabel的frame属性。我们可以使用允许我们给出不同变量的CGRect来创建一个框架,如x位置、y位置、宽度和高度。

让我们创建一个标签并将其添加为我们视图的子视图。

let label = UILabel()
label.frame = CGRect(x: 10, y: 40, width: 200, height: 50)
label.backgroundColor = colorLiteral(red: 0.7450980544, green: 0.1568627506, blue: 0.07450980693, alpha: 1)
label.textColor = colorLiteral(red: 0.05882352963, green: 0.180392161, blue: 0.2470588237, alpha: 1)
label.text = "Custom label"
self.view.addSubview(label)

我们也可以将其嵌入到一个函数中,并创建一个扩展。

func makeLabel(atX x: Double, andY y: Double,width: Double, height: Double) -> UILabel {
   let label = UILabel()
   label.frame = CGRect(x: x, y: y, width: width, height: height)
   label.backgroundColor = colorLiteral(red: 0.7450980544, green: 0.1568627506, blue: 0.07450980693, alpha: 1)
   label.textColor = colorLiteral(red: 0.05882352963, green: 0.180392161, blue: 0.2470588237, alpha: 1)
   label.text = "Custom label"
   return label
}

我们可以在视图控制器中与之前的代码一起使用它,这是设备上的样子。

self.view.addSubview(makeLabel(atX: 10, andY: 100, width: 250, height: 100))

更新于:30-Jul-2019

3K+ 次浏览

开始你的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.