在Swift 4中,您可以通过创建一个函数来从字符串数组动态生成UILabels。以下是如何实现这一功能的步骤:
以下是一个简单的函数示例,它接受一个字符串数组作为参数,并返回一个包含UILabels的数组:
import UIKit
func createLabels(from strings: [String]) -> [UILabel] {
var labels: [UILabel] = []
for string in strings {
let label = UILabel()
label.text = string
label.textColor = .black
label.textAlignment = .center
label.font = UIFont.systemFont(ofSize: 16)
labels.append(label)
}
return labels
}
// 使用示例
let stringArray = ["Hello", "World", "From", "Swift"]
let labels = createLabels(from: stringArray)
// 假设您有一个视图来添加这些标签
for label in labels {
view.addSubview(label)
// 设置每个标签的位置和大小
label.frame = CGRect(x: 0, y: 0, width: 100, height: 30)
}
使用Auto Layout来设置UILabels的位置和大小:
for (index, label) in labels.enumerated() {
view.addSubview(label)
label.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
label.centerXAnchor.constraint(equalTo: view.centerXAnchor),
label.centerYAnchor.constraint(equalTo: view.centerYAnchor, constant: CGFloat(index * 40))
])
}
通过这种方式,您可以确保UILabels在视图中正确布局,并且可以根据数组中的元素数量动态调整。
没有搜到相关的沙龙