일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- 화면 가리기
- 아카이브 에러
- RxSwift
- 하단 네비게이션바
- color 변경
- CryptoSwift
- 테이블뷰 셀 밀어서 삭제
- 로그출력
- print vs dump
- 테이블뷰 밀어서 삭제
- 소셜로그인
- MVVM
- 비공개 앱 배포
- then
- 백그라운드 진입시 화면
- AppleLogin
- navigationbar
- iOS 광고달기
- archive error
- snapkit
- reactorkit
- failed: No such file or directory (2)
- testflight error
- 테이블 뷰
- Business Manager
- RxCocoa
- codebase
- 로그 찍기
- Apple Enterprise
- 스토리보드 없이
Archives
- Today
- Total
ukSeung iOS
[Swift] Then 라이브러리 예제 본문
안녕하세요 욱승입니다.
이번 포스팅에서는 'Then' 라이브러리에 대해서 다루어 볼건데요 무슨상황에서 많이 쓰이게 되냐면 스토리보드가 아닌 CodeBase로 UI를 구현할때 조금더 가독성이 좋은 코드를 구성할 수 있습니다.
💻Podfile
💻예제
// Then 사용X
let label: UILabel = {
let label = UILabel()
label.text = "Then 사용X"
label.sizeToFit()
return label
}()
// Then 사용
let labelThen = UILabel().then {
$0.text = "Then 사용O"
$0.sizeToFit()
}
UILabel 객체 생성의 경우 차이가 보이시나요
💻전체 예제코드
//
// ViewController.swift
// JSPhoneFormat
//
// Created by plsystems on 2023/02/20.
//
import UIKit
import SnapKit
import Then
// 프로토콜
protocol ViewAttributes {
func setUI()
func setAttributes()
}
class ViewController: UIViewController, ViewAttributes{
// Then 사용X
let label: UILabel = {
let label = UILabel()
label.text = "Then 사용X"
label.sizeToFit()
return label
}()
// Then 사용
let labelThen = UILabel().then {
$0.text = "Then 사용O"
$0.sizeToFit()
}
override func viewDidLoad() {
super.viewDidLoad()
setUI()
setAttributes()
}
func setUI() {
//view에 addSubView
self.view.addSubview(label)
self.view.addSubview(labelThen)
}
func setAttributes() {
//Snapkit, 'Then'을 사용하지 않은 객체의 AutoLayout
label.snp.makeConstraints {
$0.centerX.centerY.equalTo(self.view.safeAreaLayoutGuide)
}
//Snapkit, 'Then'을 사용한 객체의 AutoLayout
labelThen.snp.makeConstraints {
$0.centerX.equalTo(self.view.safeAreaLayoutGuide)
$0.top.equalTo(label.snp.bottom).offset(30)
}
}
}
Reference
GitHub - devxoul/Then: ✨ Super sweet syntactic sugar for Swift initializers
✨ Super sweet syntactic sugar for Swift initializers - GitHub - devxoul/Then: ✨ Super sweet syntactic sugar for Swift initializers
github.com
728x90
반응형
'iOS > Library' 카테고리의 다른 글
[Swift] 구글 AdMob, 앱에 광고달기 (0) | 2023.03.15 |
---|---|
[iOS] CocoaPods could not find compatible versions for pod (0) | 2023.03.14 |
[Swift] Toast메시지 띄우기 (0) | 2023.03.10 |
[Swift] JSPhoneFormat 휴대폰번호 포맷팅 (0) | 2023.02.20 |
[Swift] 에러로그 - Ignoring ffi-1.15.5 because its extensions are not built. Try: gem pristine ffi --version 1.15.5 (0) | 2023.02.20 |