提问者:小点点

无法从UIScrollViewDelegate重写scrollViewDidScroll


我是iOS和swift的新手,我试图从UIScrollViewDelegate重写scrollViewDidScroll(),但它显示我“方法不重写它的超类中的任何方法”,我正在学习本教程https://www.youtube.com/watch?v=xq3cvd8-zne

这是我做的代码。

class ViewController: UIViewController, UIScrollViewDelegate {

    
    
    @IBOutlet weak var scrolliew: UIScrollView!
    @IBOutlet weak var pageControl: UIPageControl!
    
    var contentWidth:CGFloat=0.0
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        scrolliew.delegate=self
        
        for image in 0...3 {
            let imageToDisplay = UIImage(named:"\(image).png")
            let imageView = UIImageView(image:imageToDisplay)
            
            scrolliew.addSubview(imageView)
            
            let xCordinates = view.frame.minX + view.frame.width * CGFloat(image)
            
            contentWidth += view.frame.width
            
            imageView.frame=CGRect(x:xCordinates,y:view.frame.height/2,width:100,height:100)
            
        }
        
        scrolliew.contentSize=CGSize(width: contentWidth, height: view.frame.height)
    }
     

    override func scrollViewDidScroll(_ scrollView: UIScrollView) {
        
    }

}

共1个答案

匿名用户

实际上不必重写该方法。ScrollViewDidScroll(...)UIScrollViewDelegate协议的一部分,该协议的实现是可选的。

只需删除override关键字即可修复错误。