我有UIButtons的出口集合:嵌套在迅速3循环为uibuttons标题
@IBOutlet var categoriesButtonLabels: [UIButton]!
每个按钮具有不同的标签(在故事板中设置)。
我想改变他们的标题填充字符串数组(我从我的FireBase数据库中检索我的代码中的其他地方)。
我想是这样的:
override func viewDidLoad() {
super.viewDidLoad()
// Setting Category buttons labels
for button in categoriesButtonLabels {
for i in categories {
button.setTitle("\(i)", for: .normal)
}
}
}
,但它变得只是类别数组的最后一个值,并设置标题相同的所有按钮... 我在做什么错?
为了完整起见: 这是我的类别阵列:
for (index, value) in categories.enumerated() {
print("\(index) = \(value)")
}
和出口集合:
for (index, value) in categoriesButtonLabels.enumerated() {
print("\(index) = \(value)")
}
输出:
categories string array is:0 = sports categories string array is:1 = science categories string array is:2 = movies categories string array is:3 = music categories string array is:4 = history
Outlet UIButtons Collection is:0 = > Outlet UIButtons Collection is:1 = > Outlet UIButtons Collection is:2 = > Outlet UIButtons Collection is:3 = > Outlet UIButtons Collection is:4 = >
谢谢,但我失去了一些东西......如果我删除内部循环,你会得到[i]类别? – Alex
其实我的小姐。查看更新回答 –
致命错误:索引超出范围 (lldb)。 这是超级奇怪的,因为我的类别数组已正确填充 – Alex