zoukankan      html  css  js  c++  java
  • Swift 图片浏览器

    class ViewController: UIViewController, UIScrollViewDelegate{

        var scrollView: UIScrollView?

        

        var images: NSMutableArray = NSMutableArray(capacity: 5)

        

        override func viewDidLoad() {

            super.viewDidLoad()

            // 

            self.title = "图片浏览"

            

            self.automaticallyAdjustsScrollViewInsets = false

            

            

            scrollView = UIScrollView(frame: self.view.bounds)

            self.view.addSubview(scrollView!)

            

            //不显示滚动条

            scrollView?.showsHorizontalScrollIndicator = false

            scrollView?.showsVerticalScrollIndicator = false

            //设置分页显示

            scrollView?.pagingEnabled = true

            //设置背景颜色

            scrollView?.backgroundColor = UIColor.redColor()

            

            //设置内容视图大小

            scrollView?.contentSize = CGSize( self.view.frame.size.width * 5, height: self.view.frame.size.height)

            scrollView?.delegate = self

            

            //加载图片

            for index in 0...5 {

                

                let image: UIImage! = UIImage(named: "(index).JPG")

                let photoScrollView:PhotoScrollView! = PhotoScrollView(frame: CGRect(x: self.view.frame.size.width * CGFloat(index), y: 0, self.view.frame.size.width, height: self.view.frame.size.height))

                photoScrollView.tag = 200+index

                photoScrollView.backgroundColor = UIColor(red:0.4, green: 1, blue: 1, alpha: 1)

                photoScrollView.image = image

                self.scrollView?.addSubview(photoScrollView)

            }

            

            

        }

        

        func scrollViewDidEndDecelerating(scrollView: UIScrollView)

        {

            let currentIndex = Int(scrollView.contentOffset.x/self.view.bounds.width)

            if currentIndex != index {

                let photoScrollView = scrollView.viewWithTag(200+index) as! PhotoScrollView;

                //还原比例大小

                photoScrollView.setZoomScale(1, animated: false)

            }

            index = currentIndex

        }

        

        var index:NSInteger = 0

    }

     2.设置img

    class PhotoScrollView: UIScrollView, UIScrollViewDelegate {

        var _image:UIImage!

        var image:UIImage! {

            get {

                return self._image

            }

            set {

                _image = newValue

                let imgView:UIImageView = self.viewWithTag(100) as! UIImageView

                imgView.backgroundColor = UIColor.greenColor()

                imgView.image = image

            }

        }

        override init(frame: CGRect) {

            super.init(frame: frame)

            

            let imgView:UIImageView! = UIImageView(frame: self.bounds)

            imgView.tag = 100

            self.addSubview(imgView)

            

            //取消滑动条

            self.showsHorizontalScrollIndicator = false

            self.showsVerticalScrollIndicator = false

            self.delegate = self

            

            //设置最大、最小缩放比例

            self.maximumZoomScale = 3

            self.minimumZoomScale = 1

            

        }

        required init?(coder aDecoder: NSCoder) {

            super.init(coder: aDecoder)

        }

        

        func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {

            return self.viewWithTag(100)

        }

    }

  • 相关阅读:
    VTK初学一,动画加AVI录制终于做出来了
    QCamera获取摄像头图像(转载)
    VTK初学一,比较常见的错误2
    myeclipse2014鼠标单击后光标位置背景底色为白色太难看,行号显示
    记一次跟二房东公司(非中介个人房源无中介费)租房的经历
    求16进制数据或运算后的值(即多个16进制相加的和)
    error LNK2001: 无法解析的外部符号 "public: char * __thiscall
    如何利用指向数组的指针得到数组元素个数?
    C++判断字符串是否为空的一个小问题
    C++开发中BYTE类型数组转为对应的字符串
  • 原文地址:https://www.cnblogs.com/ZGSmile/p/5726507.html
Copyright © 2011-2022 走看看