swift 如何实现上下滚动视图

裴建华
2023-12-01

ScrollView的使用

首先我想说明一下
先要学习ScrollView的基本使用。

let scrollView = UIScrollView()
scrollView.frame = self.view.bounds
let imageView = UIImageView(image:UIImage(named:"bigpic"))
scrollView.contentSize = imageView.bounds.size
scrollView.addSubview(imageView)
self.view.addSubview(scrollView)  

scrollView.delegate = self //设置代理。
//缩小放大比例:
scrollView.minimumZoomScale = 0.1 //最小比例
scrollView.maximumZoomScale = 3 //最大比例
代理方法:
//滚动触发
func scrollViewDidScroll(_ scrollView: UIScrollView) {
        print("x:\(scrollView.contentOffset.x) y:\(scrollView.contentOffset.y)")
    }
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
    for subview : AnyObject in scrollView.subviews {
        if subview.isKind(of: UIImageView.self) {
            return subview as? UIView
        }
    }
    return nil
}
    

其中scorllView.frame表示的是我们的scrollerView 的位置大小
而 contentSize说的是里面表现的内容的大小 数据类型是 CGSize
那么我们的contentSize > frame 那么我们的scrollView 才滑动。
之后 我们新建其他视图都是 ScrollView 的subView;

实现ScrollViewdelegete协议:

iOS scrollview不能滑动的几个原因及解决方法

contentSize 这个属性,比uiscrollview的frame要小, 无需滚动, 自然就滚动不了。 
scrollenabled 这个属性,标识着是否允许滚动,要言设成yes 
 类似资料: