Swift 如何向滚动视图添加UILabel以显示标签中的所有文本
我正试图以编程方式向scrollview添加2个UILabel。UILabel中的文本是动态的,我不知道文本是什么,因为它是从数据库加载的。因此,我不知道我应该设置什么尺寸的标签。Im使用滚动视图显示每个标签内的所有文本 我该怎么做呢?目前,我正在使用以下代码Swift 如何向滚动视图添加UILabel以显示标签中的所有文本,swift,xcode,Swift,Xcode,我正试图以编程方式向scrollview添加2个UILabel。UILabel中的文本是动态的,我不知道文本是什么,因为它是从数据库加载的。因此,我不知道我应该设置什么尺寸的标签。Im使用滚动视图显示每个标签内的所有文本 我该怎么做呢?目前,我正在使用以下代码 let textArray = [job.title, job.description] for stage in 0...1{ let label = UILabel() label.font =
let textArray = [job.title, job.description]
for stage in 0...1{
let label = UILabel()
label.font = UIFont(name: "CenturyGothic", size: 20)
label.textColor = #colorLiteral(red: 1, green: 1, blue: 1, alpha: 1)
label.textAlignment = .center
label.lineBreakMode = .byWordWrapping
label.numberOfLines = 0
label.text = textArray[stage]
scrollView.addSubview(label)
}
标题和描述是动态的,并从数据库中提取。但是,这不会显示任何文本,更不用说我的滚动视图了。任何帮助都将不胜感激。您还必须设置标签的框架
let label = UILabel(frame: CGRect(x: self.view.frame.size.width/2 - 75, y: self.view.frame.size.height-100, width: 150, height: 35))
label.autoresizingMask = [.flexibleWidth, .flexibleHeight]
label.textColor = UIColor.white
label.textAlignment = .center;
lLabel.font = UIFont(name: "Montserrat-Light", size: 12.0)
label.text = message
label.alpha = 1.0
self.scrollView.addSubview(label)
您是否考虑过使用
UITextView
如果您想使用UILabels
我建议在UIScrollView
中放置一个垂直的UIStackView
来放置UILabels
将scrollview到superview和stackview到scrollview的顶部、底部、尾部和前导锚定设置为零。还将superview的等宽约束设置为stackview。垂直堆栈将根据其内容自动计算其高度,但宽度需要从外部设置。当滚动视图的内容高度超过其高度时,滚动视图将变为可滚动视图
另外,不要忘记将标签的行数设置为零,以允许它们显示无限多的行
您可以通过编程方式设置所有这些内容,也可以在故事板中设置除标签以外的所有内容,这会更快,并减少ViewController中样板代码的数量。为什么不使用
UITableView
?使用表视图显示动态数据。。。。您还可以根据需要定制电池。