|
//
// 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()
}
}
}
|