다음과 같은 코드를 통해 네비게이션 바의 제목 텍스트를 빨간색으로 설정할 수 있습니다:
navigationController?.navigationBar.titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.red]
또한, 텍스트의 폰트나 스타일을 설정하려면 여러 속성을 포함할 수 있습니다:
navigationController?.navigationBar.titleTextAttributes = [
NSAttributedString.Key.foregroundColor: UIColor.blue, // 텍스트 색상
NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 20), // 텍스트 폰트
NSAttributedString.Key.shadow: NSShadow() // 그림자 설정 가능
]
또는, 원하는 색상 및 폰트를 적용할 수 있습니다.
navigationController?.navigationBar.titleTextAttributes = [
NSAttributedString.Key.foregroundColor: UIColor.label,
NSAttributedString.Key.font: UIFont(name: "HakgyoansimBunpilR", size: 32) ?? UIFont.systemFont(ofSize: 18)
]
이 경우 title이 화면 가운데로 나온다.
네비게이션 바의 타이틀을 왼쪽 정렬로 옮기려면 기본적으로 UINavigationBar는 타이틀을 중앙에 배치하도록 설계되어 있어 직접적으로 타이틀의 위치를 조정하기는 어렵습니다. 그러나 네비게이션 아이템에 커스텀 뷰를 추가하여 타이틀을 왼쪽에 위치시키는 방법을 사용할 수 있습니다.
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .systemBackground
// 타이틀을 UILabel로 정의
let titleLabel = UILabel()
titleLabel.text = "Search"
titleLabel.font = UIFont(name: "HakgyoansimBunpilR", size: 18) ?? UIFont.systemFont(ofSize: 18)
titleLabel.textColor = UIColor.label
titleLabel.sizeToFit() // 크기 조정
// 커스텀 타이틀을 leftBarButtonItem으로 설정
navigationItem.leftBarButtonItem = UIBarButtonItem(customView: titleLabel)
// 만약 다른 왼쪽 버튼 아이템이 필요하면 leftBarButtonItems를 사용할 수도 있습니다.
// navigationItem.leftBarButtonItems = [UIBarButtonItem(customView: titleLabel)]
}
'iOS > UIKIT' 카테고리의 다른 글
왜 서치바 heightAnchor 의 값을 변경했는데.. 왜 높이 조절 안됨? (3) | 2024.10.11 |
---|---|
UISheetPresentationController.... TabBarController를 가린다... (0) | 2024.10.10 |
DGChart 사용해서 Chart 만들기 (0) | 2024.10.05 |
테이블 내에 있는 컬렉션뷰는 어떻게 구분할까? (3) | 2024.09.28 |
네비게이션 바 투명하게 만들기 (0) | 2024.09.26 |