|
//
// GroupDetailMemeberView.swift
// Paiai_iOS
//
// Created by FFIB on 2019/2/18.
// Copyright © 2019 FFIB. All rights reserved.
//
import UIKit
class GroupDetailMemeberView: UIView {
var avatars = [String]() {
didSet {
constructViewHierarchy()
activateConstraints()
}
}
private var imageViews = [UIImageView]()
private var visiableMembersCount = 0
private var space: CGFloat = 0
override func didMoveToWindow() {
visiableMembersCount = Int((width - 6) / 46)
space = (width - CGFloat(40 * visiableMembersCount)) / CGFloat(visiableMembersCount + 1)
}
func constructViewHierarchy() {
imageViews.forEach { $0.removeFromSuperview() }
imageViews.removeAll()
for avatar in avatars {
let imageView = UIImageView()
imageView.cornerRadius = 5
imageView.setImage(avatar, placeholder: UIImage.defaultAvatar)
addSubview(imageView)
imageViews.append(imageView)
}
}
func activateConstraints() {
var last: UIImageView?
for imageView in imageViews {
imageView.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
imageView.widthAnchor.constraint(equalToConstant: 40),
imageView.heightAnchor.constraint(equalToConstant: 40),
imageView.centerYAnchor.constraint(equalTo: centerYAnchor),
imageView.leadingAnchor.constraint(equalTo: last?.trailingAnchor ?? leadingAnchor, constant: space)
])
last = imageView
}
}
}
|