루트 viewcontroller 및 하위 viewcontroller가있는 탐색 응용 프로그램이 있습니다. 자식 -didSelectRowAtIndexPath 메서드에서 다음과 같이 대상/동작이있는 뒤로 단추를 추가합니다. 뒤로 단추를 선택하면 이전 자식보기가 아닌 루트보기로 되돌아 가고 싶습니다. 작업 방법은 발사되지 않는 이유 그러나, 나는 알아낼 수 없습니다 :UINavigationController UIBarButtonItem이 동작 메서드에 응답하지 않습니다.
- (void)tableView:(UITableView *)tableView
didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
Question *newQuestion = [[Question alloc]
initWithNibName:@"Question"
bundle:nil];
newQuestion.testQuestion = self.testQuestion;
[self.navigationController dismissModalViewControllerAnimated:YES];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]
initWithTitle:@"Quiz"
style:UIBarButtonItemStylePlain
target:self
action:@selector(backToMenu)];
self.navigationItem.backBarButtonItem = backButton;
[backButton release];
[self.navigationController pushViewController:newQuestion
animated:YES];
[newQuestion release];
}
을 내 질문 클래스의 상단에, 나는 backToMenu 방법을 포함한다 :
-
(void)backToMenu {
NSLog(@" backToMenu");
[self.navigationController popViewControllerAnimated:YES];
그러나 -backToMenu는 절대로 실행되지 않습니다. 나는 NSLog 디스플레이를 보지 못했다. -viewWillAppear가 트리거되지만, 뒤로 단추를 누르거나 테이블 행을 선택했기 때문에 내가 거기 있는지 여부를 알 수 없습니다. 아마 당신에게 분명하지만, 난처한 ... thx
음을 사용할 수 있습니다, 나는 루트에서 스택과 부하를 지우려면 뒤로 버튼을 wan't. 귀하의 제안을 다른 탐색 모음 버튼 항목으로 사용 하시겠습니까? – Namhcir