Swift 快速代表不开火

Swift 快速代表不开火,swift,delegates,xcode7,Swift,Delegates,Xcode7,我有一个pageViewController和一个itemController用于内容。现在我想知道itemController的scrollView位置。我创建了一个协议和一个委托。不知何故,该代表没有开火。为什么? 我的项目控制器: protocol scrollPosDelegate{ func scrollPosChanged(newVal:Float) } class PageItemController: UIViewController, UIScrollViewDele

我有一个pageViewController和一个itemController用于内容。现在我想知道itemController的scrollView位置。我创建了一个协议和一个委托。不知何故,该代表没有开火。为什么?

我的项目控制器:

protocol scrollPosDelegate{
    func scrollPosChanged(newVal:Float)
}

class PageItemController: UIViewController, UIScrollViewDelegate {

    @IBOutlet var scrollView: UIScrollView!
    var scrollDelegate:scrollPosDelegate? = nil
    var positie: Float = 8.0 {
         didSet {
               if let delegate = scrollDelegate{
                    delegate.scrollPosChanged(self.positie)
                    print(positie)
                    }
                }
    }

    override func viewDidLoad() {
          super.viewDidLoad()
         scrollView.delegate = self
    }

    func scrollViewDidScroll(scrollView: UIScrollView){
        positie += 0.1
    }

}
class PageView: UIViewController, scrollPosDelegate {


    func scrollPosChanged(newVal:Float){
         print("Number Changed:\(newVal)")
    }

}
我的页面视图控制器:

protocol scrollPosDelegate{
    func scrollPosChanged(newVal:Float)
}

class PageItemController: UIViewController, UIScrollViewDelegate {

    @IBOutlet var scrollView: UIScrollView!
    var scrollDelegate:scrollPosDelegate? = nil
    var positie: Float = 8.0 {
         didSet {
               if let delegate = scrollDelegate{
                    delegate.scrollPosChanged(self.positie)
                    print(positie)
                    }
                }
    }

    override func viewDidLoad() {
          super.viewDidLoad()
         scrollView.delegate = self
    }

    func scrollViewDidScroll(scrollView: UIScrollView){
        positie += 0.1
    }

}
class PageView: UIViewController, scrollPosDelegate {


    func scrollPosChanged(newVal:Float){
         print("Number Changed:\(newVal)")
    }

}

您忘记给scrollDelegate赋值

顺便说一下,您可以简单地将PageView设置为PageItemController的UIScrollView委托,而不是转换UIScrollView委托消息

class PageView: UIViewController, UIScrollViewDelegate {

    // Don't forget to call!
    func setupDelegate() {
         pageItemController.scrollView.delegate = self
    }

    func scrollViewDidScroll(scrollView: UIScrollView) {
         print("Number Changed")
    }

}

我收到“使用未解析标识符'pageItemController'”错误。我在pageItemController上有一个滚动视图,我想知道它在pageView上的位置。我不知道scrollViewDidScroll功能如何帮助我查看页面。你能解释一下吗?