Notice
Recent Posts
Recent Comments
Link
투케이2K
252. (ios/swift) NSLayoutConstraint Visual Format 사용해 UILabel 라벨 오토 레이아웃 설정 실시 - AutoLayout 본문
IOS
252. (ios/swift) NSLayoutConstraint Visual Format 사용해 UILabel 라벨 오토 레이아웃 설정 실시 - AutoLayout
투케이2K 2022. 11. 7. 17:40[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[소스 코드]
// MARK: - [테스트 메인 함수 정의 실시]
func testMain() {
print("")
print("====================================")
print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]")
print("====================================")
print("")
/*
// -----------------------------
[요약 설명]
// -----------------------------
1. NSLayoutConstraint : 오토 레이아웃 설정 시 사용됩니다
// -----------------------------
2. attribute 속성 :
- 뷰 : [] (대괄호) 사용
- 뷰간 연결 : - (하이픈)을 사용
// -----------------------------
3. 예제 설명
- 좌측 / 우측 마진 설정 >> 컴포넌트 width 지정됨
- 컴포넌트 height 설정
- 컴포넌트 수직 간격 설정
// -----------------------------
*/
// [비동기 처리 수행]
DispatchQueue.main.async {
// [초기 컴포넌트 선언 실시]
let label = UILabel()
// [컴포넌트 속성 설정]
label.text = "TWOK"
label.textColor = UIColor.white
label.backgroundColor = UIColor.blue
label.textAlignment = .center
label.font = UIFont.systemFont(ofSize: CGFloat(50))
// [뷰에 추가 실시]
self.view.addSubview(label)
// [오토레이아웃 리사이징 충돌 방지]
label.translatesAutoresizingMaskIntoConstraints = false // 리사이징 false 설정
// [Visual Format 사용해 오토레이아웃 설정 실시]
let horizontal_format = "H:|-30-[label]-30-|" // [좌측 및 우측 간격 지정 : width 크기 결정됨]
let vertical_format = "V:|-50-[label(100)]" // [세로 간격 및 height 값 지정 : self.view 기준으로 세로 간격 설정]
//let vertical_format = "V:|[button]-50-[label(100)]" // [세로 간격 및 height 값 지정 : button 컴포넌트 기준으로 세로 간격 설정]
// [NSLayoutConstraint 설정]
let views = [
"label" : label
]
var constraints = NSLayoutConstraint.constraints(withVisualFormat: horizontal_format, options: [], metrics: nil, views: views)
constraints += NSLayoutConstraint.constraints(withVisualFormat: vertical_format, options: [], metrics: nil, views: views)
NSLayoutConstraint.activate(constraints)
}
}
[결과 출력]
반응형
'IOS' 카테고리의 다른 글
Comments