我试图弄清楚如何在 Xcode 7 (iOS9) 上的 Swift 中解决此问题,并且我也遇到此错误:
无法为“[UIViewController]”类型的值添加下标?索引类型为“Int”
任何建议表示赞赏。谢谢。
My code:
func indexPositionForCurrentPage(pageViewController: UIPageViewController) -> Int {
let currentViewController = pageViewController.viewControllers[0] as UIViewController
for (index, page) in pages.enumerate() {
if (currentViewController == page) {
return index
}
}
return -1
}
Try:
let currentViewController = pageViewController.viewControllers![0]
不过,这样写会更安全:
if let currentViewController = pageViewController.viewControllers?[0] {
// ... and then do everything else in the if-block
end
另一种选择:
guard let currentViewController = pageViewController.viewControllers?[0] else {
return
}
// ... and then just proceed to use currentViewController here
这样做的优点是安全,但无需将函数的其余部分放入if
block.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)