xcode에서 NavigationBar를 만들었을 때 다음과 같이 선이 생긴다.
스토리보드 상에서 지울수 있는 방법이 없을까 찾아봤지만 없는듯하다.
대신 코드에서 지우는 방법을 찾았다.
override func viewDidLoad() {
super.viewDidLoad()
setNavigationBar()
}
func setNavigationBar() {
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for:.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.layoutIfNeeded()
}
viewDidLoad
를 오버라이드하고 그 안에 위의 코드를 넣으면 된다.
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
setNavigationBar()
}
func setNavigationBar() {
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for:.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
// self.navigationController?.navigationBar.layoutIfNeeded()
}
viewWillAppear
에 넣으면 layoutIfNeeded
는 넣지 않아도 된다. 라고 아래 출처에서 그런것 같은데 그냥 viewDidLoad
에 layoutIfNeeded()
없이 넣어도 제대로 작동한다.
왜인지는 더 공부해서 추가해야겠다.
참고
'iOS > iOS' 카테고리의 다른 글
iOS) CoreData - Migration (1) | 2020.12.15 |
---|---|
iOS) Build input file cannot be found 에러 해결 (0) | 2020.11.07 |
iOS) UITableView로 채팅 UI 만들기(1) (0) | 2020.09.23 |
iOS) NSCoding과 Archive를 통한 데이터 저장 - (2) (0) | 2020.09.20 |
iOS) NSCoding과 Archive를 통한 데이터 저장 - (1) (0) | 2020.09.20 |