美文网首页iOS轮子
iOS视图封装 - DJCarouselView

iOS视图封装 - DJCarouselView

作者: SealShile | 来源:发表于2017-08-31 22:52 被阅读20次

    DJCarouselView

    一个可以无限滚动的轮播图

    功能

    1. 自定义图片的加载方式,不依赖任何图片加载库
    2. 图片可以从本地加载,也可以从url加载
    3. 可以设置默认图片
    4. 可以设置圆角
    5. 可以显示pageControl
    6. 可以无限循环(一直往右侧滑动,无需返回最左侧)
    7. 可以自动滚动
    8. 可以设置自动滚动的时间

    用法

    1.创建

            let carouselView = DJCarouselView(frame: CGRect(x: 0, y: 100, width: 320, height: 100))
            // 实现代理方法
            carouselView.delegate = self
            
            // 也可以加载本地图片
            carouselView.imagePathsGroup = ["https://shilelive.xyz/postimages/ad1c7ca9ed5595a97b868ed119129620.jpg",
                                            "https://shilelive.xyz/postimages/efd3f7a7e1725cd9e9bec7112b6e028c.jpg",
                                            "https://shilelive.xyz/postimages/ab39a0538333d9bf9b197291b3392700.jpg"]
            // 图片加载失败时的默认图片
            carouselView.placeholderImage = nil
            // 圆角
            carouselView.cellCornerRadius = 10
            // 是否显示页码
            carouselView.showPageControl = false
            // 是否无限循环,滑动最后一张图片的时候,第一张图片从后面出现
            carouselView.infiniteLoop = false
            // 是否可以自动滚动
            carouselView.isAutoScrollEnabled = false
            // 自动滚动的时间
            carouselView.autoScrollTimeInterval = 4
            
            self.view.addSubview(carouselView)
    

    2.实现代理方法

        func carouselDidSelectItem(atIndex: Int) {
            // 当轮播图被点击时候的操作
            print("\(atIndex)")
        }
        
        func setImage(imageView: UIImageView, url: URL) {
            // 自定义加载图片的方式
            let data = NSData(contentsOf: url)
            if let data = data {
                imageView.image = UIImage(data: data as Data)
            }
        }
    

    相关文章

      网友评论

        本文标题:iOS视图封装 - DJCarouselView

        本文链接:https://www.haomeiwen.com/subject/nuocjxtx.html