Ios 以编程方式自动创建Swift UILabel
我想根据需要在swift中自动创建UILabel。也就是说,如果我的数据库请求返回4个值,我需要4个标签,如果它返回1个值,我需要1个标签..等等 到目前为止,我有下面的代码,但它在一个标签中显示了我的数据(解析时数组中的字符串)。我需要一种动态的方法来创建具有不同名称的新标签,但不知道如何做到这一点。目前这是我的代码。我有一个“间隔”变量,我希望它能将下一个检索到的数据推到下面50px的标签中,但它只是将同一个UILabel中的所有数据推到下面50Ios 以编程方式自动创建Swift UILabel,ios,swift,Ios,Swift,我想根据需要在swift中自动创建UILabel。也就是说,如果我的数据库请求返回4个值,我需要4个标签,如果它返回1个值,我需要1个标签..等等 到目前为止,我有下面的代码,但它在一个标签中显示了我的数据(解析时数组中的字符串)。我需要一种动态的方法来创建具有不同名称的新标签,但不知道如何做到这一点。目前这是我的代码。我有一个“间隔”变量,我希望它能将下一个检索到的数据推到下面50px的标签中,但它只是将同一个UILabel中的所有数据推到下面50 for comments in object
for comments in object["Comments"] as NSArray {
var counter = ""
println(comments)
counter = comments as String
var spacer: CGFloat = 50
var label = UILabel(frame: CGRectMake(0, 0, 200, 21))
label.center = CGPointMake(160, 300 + spacer )
label.textAlignment = NSTextAlignment.Center
label.text = counter
self.view.addSubview(label)
spacer = spacer + 50
}
我想我需要为每个标签(label1,label2..etc)创建一个新的UILabel,但我如何动态地做到这一点,有什么建议吗 标签的名称无关紧要。您可以在每次循环迭代时重置间隔变量。移动此行:
var spacer: CGFloat = 50
之前:
for comments in object["Comments"] as NSArray {
而且应该都很好。每次创建时都可以使用UILabel的标记值labels@user3438980这与每次循环迭代创建不同标签时的UILable不同。方法也一样。谢谢你,格雷格,我真不敢相信我错过了!