暂无描述

UIScrollViewExt.swift 2.0KB

    // // UIScrollViewExt.swift // PaiAi // // Created by mac on 16/8/10. // Copyright © 2016年 FFIB. All rights reserved. // import UIKit extension UIScrollView { func buildImageViews(_ imagenames: [String], width: CGFloat, height: CGFloat, spacing: CGFloat, topSpcing: CGFloat, block: setBlock) { self.subviews.forEach {$0.removeFromSuperview()} var lastImageView: UIImageView? = nil imagenames.forEach { let imageView = UIImageView().useAutoLayout() if $0.hasPrefix("http") { imageView.setImageWithNullableURL($0, placeholderImage: defaultAvatar) } else if !$0.isEmpty { imageView.image = UIImage(named: $0) } else { imageView.image = defaultAvatar } imageView.cornerRadius = 4 self.addSubview(imageView) block(imageView) if lastImageView == nil { NSLayoutConstraint.constraints(withVisualFormat: "H:|-\(spacing)-[img(\(width))]", options: [], metrics: nil, views: ["img": imageView]).autolayoutInstall() NSLayoutConstraint.constraints(withVisualFormat: "V:|-\(topSpcing)-[img(\(height))]-0-|", options: [], metrics: nil, views: ["img": imageView]).autolayoutInstall() } else { NSLayoutConstraint.constraints(withVisualFormat: "H:[last]-\(spacing)-[img(\(width))]", options: [], metrics: nil, views: ["img": imageView, "last": lastImageView!]).autolayoutInstall() NSLayoutConstraint.constraints(withVisualFormat: "V:|-\(topSpcing)-[img(\(height))]-\(topSpcing)-|", options: [], metrics: nil, views: ["img": imageView]).autolayoutInstall() } lastImageView = imageView } if lastImageView != nil { NSLayoutConstraint.constraints(withVisualFormat: "H:[img(\(width))]-\(spacing)-|", options: [], metrics: nil, views: ["img": lastImageView!]).autolayoutInstall() } } }