WJXOverlappedImagesView 0.0.2

WJXOverlappedImagesView 0.0.2

Amos King 维护。




  • Amos King

WJXOverlappedImagesView

WJXOverlappedImagesView 是由一组圆边图像视图组成的一个非常简单且常见的视图,它们彼此相隔一定距离叠加。没有太多深奥的技术,只是一个常见的封装。如果您喜欢它或者甚至为它点个赞,我都会很高兴。

showcase image

安装

CocoaPods

WJXOverlappedImagesView 通过 CocoaPods 提供。要安装它,只需将以下行添加到 Podfile 中,然后 import WJXOverlappedImagesView

pod 'WJXOverlappedImagesView', '0.0.1'

手动安装

  1. 下载项目并将 WJXOverlappedImagesView 文件夹拖到您的项目中;

如何使用

在简单有效的 updateInTransaction 课程内,您可以为其图像视图的边框应用自定义颜色和宽度,每个图像相同的宽度,以及重叠距离等。

overlappedImagesView.updateInTransaction { imagesView in
    imagesView.imageBorderWidth = 4
    imagesView.imageBorderColor = UIColor.white
    imagesView.imageHeight = 66
    imagesView.overlapDistance = 16
    imagesView.shouldShowMoreIndicatorImageViewWhenImageCountExceedsMaxLimit = true
    imagesView.maxLimit = 4
    imagesView.imageUrls = ["https://avatars1.githubusercontent.com/u/4176744?v=40&s=132",...]
}

自定义获取图像的方式非常灵活。通过开启一个 imageFetcher,它不依赖于任何 'WebImage' 框架。

overlappedImagesView.imageFetcher = { imagesView, imageView, url, index in
    // fetch image via Kingfisher
    imageView.kf.setImage(with: URL(string: url), placeholder: UIImage(named: "demo-avatar"))

    // fetch image via YYWebImage
    // imageView.yy_setImage(with: URL(string: url)!, placeholder: UIImage(named: "demo-avatar"))
    
    // fetch image via SDWebImage
    // imageView.sd_setImage(with: URL(string: url), placeholderImage: UIImage(named: "demo-avatar"))
}

有时,如果某个可复用的视图(如单元格)即将被复用,则必须取消图像的加载,这里的取消方法如下。

overlappedImagesView.imageFetchCanceler = { imagesView, imageView, index in
    imageView.kf.cancelDownloadTask()
    // imageView.yy_cancelCurrentImageRequest()
    // imageView.sd_cancelCurrentImageLoad()
}

您不需要计算宽度。它支持内嵌大小内容。

overlappedImagesView.frame = CGRect(x: 0, y: 0, width: overlappedImagesView.intrinsicContentSize, height: imageHeight)

作者

王九兴 邮箱: [email protected]

许可证

WJXOverlappedImagesView 以 MIT 许可证发布。详细信息请参阅 LICENSE 文件。