이것이 내 애플 리케이션의 다른 영역에서 작동하고있는 이유는 모르겠습니다. popover의 contentViewController 인 navigationController의 제목을 표시하려고합니다. 내 DetailView.m에서보다UINopigationController의 UINavigationController, 디스플레이 타이틀이 작동하지 않습니다.
DetailView* details = [[[DetailView alloc] initWithTarget:target] autorelease];
UINavigationController* content = [[[UINavigationController alloc] initWithRootViewController:details] autorelease];
self.popover = [[[UIPopoverController alloc] initWithContentViewController:content] autorelease];
[self.popover setDelegate:self];
}
[self.popover presentPopoverFromRect:frame inView:self.scrollView permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
:이 코드입니다
- (id)initWithTarget:(Target*)aTarget
{
self = [super initWithNibName:@"TargetDetailView" bundle:nil];
if (self) {
// Custom initialization
target = [aTarget retain];
}
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationItem.title = @"Target";
}
나는 또한
content.navigationItem.title = @"Target";
을 시도했지만 그건 내 팝 오버 나에게 제목을 제공하지 않습니다. 이견있는 사람? TIA.
그게 문제를 해결했습니다. 더 설명해 주시겠습니까? 왜 내가 다른 곳에서 작동하는 비슷한 일을하고 있기 때문에이 방법으로 작동하는지 궁금합니다. 그 상황의 유일한 차이점은 initWithNibName을 호출하는 사용자 정의 initWithTarget 메소드 대신 해당 컨트롤러를 만들 때 initWithNibName을 수행한다는 것입니다. 고마워. – Crystal