我正在使用
scrollView
分页,我想使用 for 循环以编程方式将 UIView
s 添加到 scrollView
中。但我想我错过了一些东西。
这是我的代码:
func createSlide() ->[Slide]{
for i in 0..<datas.count{
slideAll?.append(Bundle.main.loadNibNamed("ViewTest", owner: self, options: nil)?.first as! Slide)
slideAll![i].testLabel.text = datas[i]
}
return slideAll!
}
我可以这样添加
UIView
吗?如果可以,我该如何修复这段代码?
编辑:
我意识到我初始化 slideAll 时顶部没有任何值:
var slideAll:[Slide]?
如何正确初始化它?我应该在函数上初始化它吗?
for i in 0...datas.count
将循环到最后一个插槽数组+1,然后它会大喊错误,因为在该索引处没有值,您应该使用 for i in 0..<datas.count
或 for slide in datas
代替
代替这一行:
var slideAll:[Slide]?
这样说:
var slideAll = [Slide]()
然后从您对其余代码中
slideAll
的引用中删除可选的解包符号。
确保
datas
已初始化。
使用for循环如下:
for text in datas {
// DO SOMETHING
}
我希望,您在代码中的某处对 uiscrollview 的视图进行了子视图,并且上面的问题中没有提到它?