HYImageBrowser 1.0.3

HYImageBrowser 1.0.3

Yan维护。



  • Yan Hu

HYImageBroswer

通过kingfisher加载图片,支持图片、URL和文件路径。

安装

pod 'HYImageBroswer'

用法

通过 addSubview函数按顺序找到所有UIImageView。

view.isAutoShowed = true  /// use isAutoShowed to show view's subviews which are UIImageView

显示您想要的图片。

override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        view.backgroundColor = .white
        // UIImageView set isRetrieval true, can be find
        view.isOnlyRetrieval = true
        view.isAutoShowed = true
        
        for i in 0 ..< 4 {
            let image1 = UIImageView.init(frame: CGRect.init(origin: CGPoint.init(x: 10, y: 100 * i + 20), size: CGSize.init(width: 200, height: 100)))
            image1.contentMode = .scaleAspectFit
            image1.clipsToBounds = true
            // it sets isRetrieval true, can be find
            image1.isRetrieval = true
            image1.isUserInteractionEnabled = true
            image1.kf.setImage(with: URL.init(string: "http://img.zcool.cn/community/0117e2571b8b246ac72538120dd8a4.jpg@1280w_1l_2o_100sh.jpg"))
            
            view.addSubview(image1)
        }
        
        let imageGoogle = UIImageView()
        imageGoogle.image = UIImage.init(named: "google")
        imageGoogle.frame = CGRect.init(x: 100, y: 100, width: 100, height: 100)
        view.addSubview(imageGoogle)
    }

自己处理这些资源的来源。

    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let cell = tableView.cellForRow(at: indexPath)
        let vc = HYPhotoTransitionViewController.init(preview: cell?.imageView?.image)
        vc.index = indexPath.row
        vc.previewDataSource = self
        present(vc, animated: true, completion: nil)
    }
    
    func photoPreviewCount() -> Int {
        return 50
    }
    
    func photoPreviewResource(at index: Int) -> Any? {
        return "http://img.zcool.cn/community/0117e2571b8b246ac72538120dd8a4.jpg@1280w_1l_2o_100sh.jpg"
    }
    
    func photoPreviewTransitionFrame(with currentIndex: Int) -> CGRect {
        let cell = tableView.cellForRow(at: IndexPath.init(row: currentIndex, section: 0))
        return cell?.imageView?.rectInWindow ?? .zero
    }

许可证

HYImageBroswer遵从MIT许可。更多信息请参阅LICENSE文件。