【发布时间】:2016-11-24 22:18:55
【问题描述】:
我正在尝试实现 UIPageViewController,但出现以下错误:我的代码如下
import UIKit
class ShopViewController: UIPageViewController, UIPageViewControllerDataSource {
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
这给了我一个错误消息:ShopViewController 不符合协议 UIPageViewControllerDataSource。
所以我发现另一个线程建议我添加以下功能:
func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController?
func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController?
这样做之后,我的代码现在是:
class ShopViewController: UIPageViewController, UIPageViewControllerDataSource {
func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController?
func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController?
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
但我仍然收到一个错误,在我添加了 2 个新函数的函数声明主体中显示相同的 + 预期 {。
有人可以帮忙吗?
【问题讨论】:
-
你所做的只是定义一些出现在协议中的函数。您实际上需要添加那些执行您想要的功能的实现。 IE。添加代码以适当地返回下一个/上一个视图控制器
标签: ios swift uiview swift3 uipageviewcontroller