iPhone : 내비게이션 바 제목 설정
모두 안녕. 나는 여전히 iPhone 개발에 익숙하지 않으며 내비게이션 바의 제목을 변경하는 방법을 파악하는 데 약간의 어려움이 있습니다. 이 사이트의 다른 질문에서 누군가가 다음을 사용하도록 권장했습니다.
viewController.title = @"title text";
하지만 그것은 나를 위해 작동하지 않습니다 ...이 작업을 수행하려면 UINavigationController를 추가해야합니까? 아니면 내 UIViewController 하위 클래스의 콘센트일까요? 도움이된다면 IB에서 탐색 모음을 정의하고 UIViewController 하위 클래스에 제목을 설정하려고합니다. 이것은 나에게 두통을주는 간단한 것들 중 하나입니다. self.title = @ "제목 텍스트"; 안으로 viewDidLoad
그리고 initWithNibName
작동하지 않았습니다. 아무도 무슨 일이 일어나고 있고 어떻게 제대로 일어나고 있는지 알고 있습니까?
감사!
.title
속성이 적용 되려면 뷰 컨트롤러가 일부 UINavigationController의 자식이어야합니다 . UINavigationBar가 단순히보기 인 경우 제목이 포함 된 탐색 항목을 푸시하거나 마지막 탐색 항목을 수정해야합니다.
UINavigationItem* item = [[UINavigationItem alloc] initWithTitle:@"title text"];
...
[bar pushNavigationItem:item animated:YES];
[item release];
또는
bar.topItem.title = @"title text";
당신은 모든 코드에 의해 그 일을하는 경우 viewDidLoad
의 방법 UIViewController
만 추가해야self.title = @"title text";
이 같은:
- (void)viewDidLoad {
[super viewDidLoad];
self.title = @"title";
}
당신은 또한 시도 할 수 있습니다 self.navigationItem.title = @"title";
또한 navigationItem이 null이 아닌지 확인하고 탐색 모음에 사용자 정의 배경을 설정 한 경우 제목이 없는지 확인하십시오.
사용하는 데 한 가지 문제가 있습니다. self.title = @"title";
탭 막대와 함께 탐색 막대를 사용하는 경우 위 줄은 탭 막대 항목의 레이블도 변경합니다. 이를 방지하려면 @testing이 제안한 것을 사용하십시오.
self.navigationItem.title = @"MyTitle";
navbar 제목 (navbar back button title이 아님)을 변경하려면이 코드가 작동합니다.
self.navigationController.topViewController.title = @"info";
tabBar 컨트롤러 내에서 navBar의 제목을 변경하려면 다음을 수행하십시오.
-(void)viewDidAppear:(BOOL)animated {
self.navigationController.navigationBar.topItem.title = @"myTitle";
}
내 탐색 기반 앱에서 다음을 수행합니다.
myViewController.navigationItem.title = @"MyTitle";
TabbarController에 통합 된 탐색 컨트롤러가 있습니다. 이것은 효과가 있었다
self.navigationItem.title=@"title";
기본적으로 탐색 컨트롤러는 '상위 항목'의 제목을 표시합니다.
그래서 appdelegate의 viewdidload 메소드에서 할 수 있습니다. 나는 그것을 테스트하고 작동합니다.
navController.navigationBar.topItem.title = @"Test";
UINavigationItem* item = [[UINavigationItem alloc] initWithTitle:@"title text"];
...
[bar pushNavigationItem:item animated:YES];
[item release];
이 코드는 작동했습니다.
스토리 보드로 작업하는 경우 컨트롤러를 클릭하고 속성 탭으로 전환 한 다음 제목 텍스트를 설정할 수 있습니다.
IB에서 설정하지 않은 동적 제목이 필요하다고 생각합니다.
그리고 viewController 객체가 NIB에 지정된 것이라고 가정합니다.
IB에서 더미 값으로 설정 한 다음 메서드를 디버그하여 더미 값이있는 컨트롤러를 확인합니다. 제목으로 표시된다고 가정합니다.
TableViewController.m 내에서 :
self.navigationController.navigationBar.topItem.title = @"Blah blah Some Amazing title";
For all your Swift-ers out there, this worked perfectly for me. It's notably one of the shorter ways to accomplish setting the title, as well:
override public func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "presentLineItem" {
print("Setting Title")
var vc = segue.destinationViewController as! LineItemsTableViewController
vc.navigationItem.title = "Line Item"
}
}
What worked for me was self.titleLabel.text = @"New Title";
참고URL : https://stackoverflow.com/questions/2280710/iphone-setting-navigation-bar-title
'programing' 카테고리의 다른 글
더 높은 종류의 유형은 언제 유용합니까? (0) | 2020.09.18 |
---|---|
EJS 템플릿 (JMVC)에서 조건문을 사용할 수 있습니까? (0) | 2020.09.17 |
iOS 개발 : 장치에서 메모리 부족 경고를 유발하려면 어떻게해야합니까? (0) | 2020.09.17 |
RSpec 테스트에서 ActiveRecord에 대한 SQL 디버그 로깅을 켜려면 어떻게해야합니까? (0) | 2020.09.17 |
MySQL 데이터베이스가 XAMPP Manager-osx에서 시작되지 않습니다. (0) | 2020.09.17 |