2011-09-06 5 views
0

목록의 모든 항목을 포함하는 MainView UITableViewController가있는 CoreData 응용 프로그램이 있습니다. 내가 성취하려고하는 것은 사용자 정의 뒤로 버튼을 추가하고 popToViewController:animated:을 사용하여 설정에 액세스하는 것입니다. 이 메서드를 사용하려고하면 응용 프로그램이 충돌합니다. 방대한 독서를 한 후에 푸시 앤 팝은 뷰 컨트롤러 용 NSArray 스택을 사용한다는 것을 깨달았다. 예를 들어, rootView는 다른보기, 1 등으로 추가 한 pushToViewController:animated:을 사용할 때보기 0입니다. 그것은 모두 의미가 있습니다. 내가 배운 것은 루트보기 후에 스택에로드되지 않는보기로 이동할 수 없다는 것입니다. 여기 내 목표는 설정보기로 이동하는 것입니다. AppDelegate.m의 코드를 변경하여 SettingsViewController를 rootViewController로 만들면 UITableViewController가 더 이상 작동하지 않아 엔티티 "enityName"을 초기화 할 수 없다는 메시지가 표시되지 않습니다. 여전히 애플 리케이션 기능의 CoreData 부분을 올바르게 가지고 여전히 설정으로 팝업 할 수있는 방법이 있습니까? 모달보기를 사용하려고 생각했지만 응용 프로그램의 스타일이 파괴되었습니다.CoreData 응용 프로그램의 popToViewController

설명하기가 어려웠습니다. 그 부분을 이해하지 못했다면 알려주세요. 도움 주셔서 감사합니다.

업데이트 : 을 사용할 수있는 UINavigationBar 문서를 읽었으므로 수동으로 뷰 컨트롤러를 푸시 및 팝하는 배열을 설정할 수 있습니다. 나는 그걸하는 법을 알아낼 수 없다. 나는 사과 drillDown 샘플 코드를 살펴 보았지만 찾고 있던 기능이 없었습니다.

답변

1

아마 당신은 애플의 탐색 컨트롤러 관용구를 오해하고 있습니다. 이는 계층 적 구조의 뷰를 드릴 다운하고 쉽고 직관적으로 앞뒤로 이동하는 것을 의미합니다.

이 계층 구조 외부에있는보기 (설정보기이이 카테고리에 속해 있음)가 실제로 모달로 표시되어야합니다. iPad에서는 예쁘고 편리한 UIPopOverController을 사용할 수도 있습니다.

물론 자신 만의 모양과 느낌을 유지하려는 경우 (사용자를 혼란스럽게하는 위험이 있음) 전환 애니메이션을 사용하면 안 될 것입니다. Apple 자신의 것이며 사전 승인 된 UIModalTransitionStyle 속성을 UIViewController s 사용할 수 있습니다.

또는 지금까지 해본 결과와 뷰 계층 구조를 사용해 볼 수 있습니다. 아마도 뷰 컨트롤러를 순차적으로 사용하고 그 사이의 컨트롤러 건너 뛰기를 뛰어 넘지 않고 단순히 오류를 제거 할 수 있습니다. 이 경우에는 오히려 더 많은 오류가 발생하기 쉬운 버전 pushToViewControllerpopToViewController보다

[self.navigationController pushViewController:controller animated:YES]; 

[self.navigationController popViewControllerAnimated:YES]; 

을 사용하기에 충분합니다.

+0

귀하의 요지를 봅니다. 이상한 이유가 있지만 UIModalTransitionStyle을 사용하여 뷰 컨트롤러를 표시하려고하면 실제로 그룹화 된 UITableView를 화면 가장자리까지 늘리는 것 같습니다. UIPopoverController를 사용하는 것이 이상적이지만 아이폰 앱을 쓰고 있습니다. 나는 Tapbots UIPopover와 비슷한 iPhone 용 UIPopover와 같은 것을 만들려고 노력할 것입니다. 두 개의 UISwitches와 크레딧 화면 만 있습니다. 괜찮을거야. 귀하의 의견을 보내 주셔서 감사합니다. 정말 감사합니다. – Frankrockz

+0

안녕하십니까. 체크 표시 또는 위 표를 고려하십시오. – Mundi

+0

응답 확인 표시로 사용할 계획 이었지만 24 시간을 기다려야한다고 말했습니다. 모두 완료 :) – Frankrockz

관련 문제