Brak opisu

GroupDetailMemeberView.swift 1.7KB

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