TIL

TIL - 220428 : StackView의 subviews 지우기 - .subviews, .arrangedSubviews, .removeArrangedSubview

비비 bibi 2022. 4. 29. 00:30

220428


StackView의 subviews 지우기 - .subviews, .arrangedSubviews, .removeArrangedSubview

if badgeStackView.subviews.count != .zero {
   badgeStackView.clearSubviews() // 아래 익스텐션 참고
}

아래와 같이 UIStackView에 익스텐션으로 만들어 두고 사용하면 편함.

import Foundation
import UIKit

extension UIStackView {
    func clearSubviews() {
        self.arrangedSubviews.forEach { view in
            self.removeArrangedSubview(view) // 부모뷰에서도 자식 뷰를 지워주고
            view.removeFromSuperview() // 자식 뷰에서도 부모 뷰를 지워준다
        }
    }
}