UIKit
코드베이스로 UIView 작성하기
by 리버🐦🔥
2023. 10. 3.
|
<UIView>
- 모든 뷰 컴포넌트의 기본 클래스
- 사용자 인터페이스의 기본 구성 요소로 사용
[Method & Property]
- backgroundColor: 배경 색을 지정한다.
등… 프로퍼티 및 메서드 추가로 공부해보기! |
//
// UIViewTest.swift
// UIKit-Study
//
// Created by Kyungsoo Lee on 2023/09/30.
//
import UIKit
class UIViewTest: UIViewController {
// MARK: - UIView
private lazy var uiView: UIView = {
let view = UIView()
view.backgroundColor = .red
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
// MARK: - viewDidLoad
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
self.view.backgroundColor = .systemGray
// 뷰 추가(아직 layout 설정 안된 상태)
self.view.addSubview(uiView)
setLayout()
}
// MARK: - UIView 제약조건
private func setUIViewLayout() {
let uiViewConstraint = [
uiView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
uiView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
uiView.widthAnchor.constraint(equalToConstant: 100),
uiView.heightAnchor.constraint(equalToConstant: 100)
]
// 제약 조건을 활성화 시켜 오토 레이아웃 설정한다.
NSLayoutConstraint.activate(uiViewConstraint)
}
// MARK: - 전체 제약조건 설정
// 컴포넌트들의 레이아웃을 설정한다
private func setLayout() {
// 프레임 기반의 레이아웃을 비활성화 하여 오토 레이아웃을 기반으로 설정할 수 있도록 한다.
// UIView 제약조건 설정
setUIViewLayout()
}
}
import SwiftUI
@available(iOS 13.0.0, *)
struct UIViewTestPrebiew: PreviewProvider {
static var previews: some View {
UIViewTest().toPreview()
}
}