我想做的事情:
以下位代码用于页面上的2个按钮。此页面是页面数组的一部分(存储在self.parent中;它还存储它在self.index中的所述数组中的索引)。 这两个按钮用于在此页面数组中向前和向后导航。如果它试图向前但是击中阵列的末尾,它应该返回到第一页;同样,回去并点击数组的开头。
@IBAction func previousButton(sender: AnyObject) {
self.prev()
}
@IBAction func nextButton(sender: AnyObject) {
self.next()
}
func next(){
if let _parent = self.parent{
if self.index != _parent.getSize()-1 {
self.view.addSubview(_parent[self.index+1].view)
}
else{
self.view.addSubview(_parent[0].view)
}
}
else{
println("This Page is not part of a List")
}
}
func prev(){
if let _parent = self.parent{
if self.index != 0 {
self.view.addSubview(_parent[self.index-1].view)
}
else{
self.view.addSubview(_parent[_parent.getSize()-1].view)
}
}
else{
println("This Page is not part of a List")
}
}
问题是:
编辑:崩溃与if语句无关,也不是随机的;当我第十次按下下一个按钮时,它会崩溃,第十次按下前一个按钮(十是我列表中的页数;如果我添加更多页面,则此数字会相应更改),当我按下下一个按下上一个或按下一个后按下一个。
我发现了问题:我没有正确切换页面,我只是在其他页面上添加一个;当我尝试显示已经加载的页面(并且仍然在页面堆栈下面的某个位置)时发生崩溃。
现在我需要找到一种更好的方法来切换它们。