Reputation:
I have 2 errors in the below code, with the same reason why. How do I fix this?
The error says "Expected expression after operator" on both lines return viewControllerAtIndex(index)
in the last two functions.
func viewControllerAtIndex(index: Int) -> WalkthroughContentViewController? {
if index == NSNotFound || index < 0 || index >= pageHeadings.count {
return nil
}
// Creating a new view controller and passing the data
if let pageContentViewController = storyboard?.instantiateViewControllerWithIdentifier("WalkthroughContentViewController") as? WalkthroughContentViewController {
pageContentViewController.imageFile = pageImages[index]
pageContentViewController.heading = pageHeadings[index]
pageContentViewController.content = pageContent[index]
pageContentViewController.index = index
return pageContentViewController
}
return nil
}
func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController? {
var index = (viewController as! WalkthroughContentViewController).index
index ++
return viewControllerAtIndex(index)
}
func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? {
var index = (viewController as! WalkthroughContentViewController).index
index --
return viewControllerAtIndex(index)
}
This is from Simon Ng's Swift Book.
Upvotes: 1
Views: 10959
Reputation: 1301
The problem is the space between target and postfix increment/decrement operators. Should be index++
and index--
.
Upvotes: 3