ISVImageScrollView
一个针对图片预览进行了优化的 UIScrollView 子类,支持缩放、滚动和旋转。
概述
当您需要将图片预览功能集成到应用中时,通常您会从 UIScrollView 开始,然后花费数小时对其进行调整以获得与默认的“照片”应用类似的功能。此控件提供了一个即插即用的功能,以缩放、滚动和旋转附加到其上的 UIImageView。
功能
- 捏合缩放和滚动
- 点击缩放
- 当滚动视图边界改变时,例如旋转后,缩放图片
- 旋转后设置适当的内容偏移,以确保可见内容保持不变
示例
要运行示例项目,请克隆仓库,然后首先从示例目录运行 pod install
。
要求
- 在iOS 9.3及以上版本进行了测试,但也应在iOS 8.x版本上工作
安装
CocoaPods
ISVImageScrollView可通过CocoaPods获取。要安装,只需将以下行添加到您的Podfile中
pod 'ISVImageScrollView'
Swift Package Manager
ISVImageScrollView还通过Swift Package Manager提供。
使用
ISVImageScrollView使用非常简单。
- 创建一个UIImageView实例并将其分配给一个图片。
- 创建一个ISVImageScrollView实例(无论是通过编程还是通过Storyboard/XIB),并将创建的UIImageView对象分配给其imageView属性。
- 别忘了设置ISVImageScrollView实例的maximumZoomScale和delegate属性。
- 最后,在代理类中实现viewForZoomingInScrollView:方法并返回步骤1中创建的UIImageView对象。
let image = UIImage(named: "Photo.jpg")
self.imageView = UIImageView(image: image)
self.imageScrollView.imageView = self.imageView
self.imageScrollView.maximumZoomScale = 4.0
self.imageScrollView.delegate = self
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return self.imageView
}
作者
Yurii Kupratsevych
许可协议
ISVImageScrollView 适用于MIT许可协议。请参阅LICENSE文件获取更多信息。