프로그래밍 방식으로 탐색 제목 변경
제목이 있는 네비게이션 바가 있습니다.이름을 바꾸기 위해 텍스트를 두 번 클릭하면 실제로 탐색 항목이라고 표시되므로 그럴 수 있습니다.
다음과 같은 코드를 사용하여 텍스트를 변경하려고 합니다.
declare navigation bar as navagationbar here
button stuff {
navigationbar.text = "title"
}
그것은 분명히 제 코드가 아닙니다. 단지 어떻게 작동하는지 보여줄 뿐입니다.
그래서 버튼을 누를 때마다 제목이 바뀌었으면 합니다.
표시되는 보기 컨트롤러의 제목을 변경하여 제목을 변경할 수 있습니다.
viewController.title = "some title"
일반적으로 이 작업은 뷰 컨트롤러에 로드된 뷰에서 수행됩니다.
override func viewDidLoad() {
super.viewDidLoad()
self.title = "some title"
}
그러나 이 기능은 UINavigation Controller에 뷰 컨트롤러가 내장되어 있는 경우에만 작동합니다.직접 탐색 모음을 만드는 대신 이 작업을 수행하는 것이 좋습니다.사용자가 직접 탐색 모음을 만들어야 하는 경우 다음 작업을 수행하여 제목을 변경할 수 있습니다.
navigationBar.topItem.title = "some title"
에다음시다에서 다음을 .viewDidLoad
self.navigationItem.title = "Your Title"
아래 코드는 Xcode 7에서 작동합니다.
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "Your Title"
}
이것이 효과가 있다는 것을 알았습니다.
navigationItem.title = "Title"
스위프트 5.1
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.title = "What ever you want"
}
그리고 만약 당신이 창조하려고 한다면.Navigation Bar
수동으로 이 코드는 당신을 도울 것입니다.
func setNavBarToTheView() {
let navBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: 64.0))
self.view.addSubview(navBar);
let navItem = UINavigationItem(title: "Camera");
let doneItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.cancel, target: self, action: #selector(CameraViewController.onClickBack));
navItem.leftBarButtonItem = doneItem;
navBar.setItems([navItem], animated: true);
}
swift4를 사용하는 사람들의 정답은 다음과 같습니다.
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "Your Text"
}
만약 당신이 가지고 있다면.NavigationController
부에내된에 된.TabBarController
하십시오.
super.tabBarController?.title = "foobar"
디버거 스크립트를 사용하여 이와 같은 문제를 디버그할 수 있습니다.치젤의 것을 시도해보기 pvc
계층에 표시되거나 숨겨진 모든 보기를 인쇄하는 명령입니다.
일반적으로, 가장 좋은 방법은 다음과 같은 제목을 설정하는 것입니다.UIViewController
함으로써, 이게함으써로렇,써,UINavigationItem
또한 설정됩니다.이것은 으로 할당하고 보다 더 좋습니다.UINavigationBar
그것은 아무 것과도 연결되어 있지 않습니다.
고객은 다음과 같은 이점과 기능을 놓치고 있습니다.UINavigationBar
목적으로 설계되었습니다.다음은 도움이 될 수 있는 설명서 링크입니다.실제 막대와 에서 설정할 수 있는 다양한 속성에 대해 설명합니다.UINavigationItem
.
다음 사항을 기억하십시오.
- 직접 배선하지 않으면 뒤로 버튼 기능이 손실됩니다.
- 기본 제공되는 "왼쪽에서 끌어서 뒤로 스와이프" 제스처가 사라집니다.
UINavigationController
의 친구들은 네 친구들입니다.
스위프트 3
스토리보드의 탐색 모음(오브젝트 브라우저에서)과 함께 제공되는 탐색 제목 표시줄 항목에 대한 배출구를 만들었습니다.그런 다음 아래 라인을 고소했습니다.
navigationBarTitleItem.title = "Hello Bar"
탐색 컨트롤러에 내장된 페이지 보기 컨트롤러의 하위 보기 컨트롤러에서 제목을 변경하려면 다음과 같습니다.
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.parent?.title = "some title"
}
스토리보드에서 보기 컨트롤러에 탐색 모음을 만들지 않은 경우 이 작업이 수행됩니다.
override func viewDidLoad() {
super.viewDidLoad()
self.title = "Title"
}
스토리보드에서 보기 컨트롤러에 탐색 모음을 만든 경우 유용합니다.
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.title = "Title"
}
뷰에서 DidLoad
내비게이션 컨트롤러?탐색Bar.topItem?제목 = "당신의 문자"
이것은 저에게 효과가 있었습니다.탐색 모음에 콘센트를 연결하고 상위 항목을 통해 제목에 액세스하기만 하면 됩니다.
navBar.topItem?.title = "Your Title Here"
Swift 4에서:
스위프트 4
override func viewDidLoad() {
super.viewDidLoad()
self.title = "Your title"
}
도움이 되었으면 좋겠네요, 잘 부탁드립니다!
사용하는 것을 선호합니다.self.navigationItem.title = "Your Title Here"
위에self.title = "Your Title Here"
탭 표시줄에서도 을 사용하므로 탐색 모음에 제목을 제공합니다.self.title
제목을 변경합니다.다음 코드를 한 번 사용해 보십시오.
참고: 작업을 수행하기 전에 슈퍼 뷰 라이프사이클을 호출해야 합니다.
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
setupNavBar()
}
}
private func setupNavBar() {
self.navigationItem.title = "Your Title Here"
}
스위프트 5.1
탐색 막대 제목을 프로그래밍 방식 및 동적으로 설정
참고: 먼저 탐색 컨트롤러 항목을 에 추가합니다.ViewController
그리고 그들의 것으로 가.ViewController.swift
파일 및 이 파일을 복사하여 붙여넣기만 하면 됩니다.viewDidLoad()
.
navigationItem.title = "Your Title Here"
예.
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.title = "Your Title Here"
}
언급URL : https://stackoverflow.com/questions/25167458/changing-navigation-title-programmatically
'programing' 카테고리의 다른 글
PowerShell에서 사용자 입력 확인 (0) | 2023.04.28 |
---|---|
스크롤 뷰어의 하위 요소가 마우스 휠로 스크롤하지 못하게 합니까? (0) | 2023.04.28 |
kubernetes에서 배포/이미지를 삭제하는 방법 (0) | 2023.04.28 |
데이터베이스를 계속 연결할 때 오류 발생 (0) | 2023.04.28 |
확인란에서 명령을 실행하고 있습니다.선택됨 또는 선택되지 않음 (0) | 2023.04.28 |