한국어, 영어버튼을 유지보수성 있게 enum으로 정리.
import UIKit
import SnapKit
enum Language {
case ko
case en
case ja
case ch
var title: String {
switch self {
case .ko: return "한국어"
case .en: return "영어"
case .ja: return "일본어"
case .ch: return "중국어"
}
}
}
final class TranslateViewController: UIViewController {
private var sourceLanguage: Language = .ko
private var targetLanguage: Language = .en
private lazy var sourceLanguageButton: UIButton = {
let button = UIButton()
button.setTitle(sourceLanguage.title, for: .normal)
button.titleLabel?.font = .systemFont(ofSize: 15.0, weight: .semibold)
button.setTitleColor(.label, for: .normal)
button.backgroundColor = .systemBackground
button.layer.cornerRadius = 9.0
return button
}()
private lazy var targetLanguageButton: UIButton = {
let button = UIButton()
button.setTitle(targetLanguage.title, for: .normal)
button.titleLabel?.font = .systemFont(ofSize: 15.0, weight: .semibold)
button.setTitleColor(.label, for: .normal)
button.backgroundColor = .systemBackground
button.layer.cornerRadius = 9.0
return button
}()
'iOS > iOS FastCampus' 카테고리의 다른 글
번역기앱) textview delegate 사용 (0) | 2023.06.20 |
---|---|
SwiftUI Enum 을 활용한 리팩토링 깔끔하게. (0) | 2023.06.05 |