SplitViewController 응용 프로그램에 문제가 있습니다. 마스터보기의 표에서 행을 선택하면 세부보기가 바둑판 식으로 바뀝니다. 문제는 새로운 인스턴스를 생성하거나 상세보기 컨트롤러를 다시로드 할 때마다 발생합니다. 인스턴스 뷰가 이미 인스턴스화 된 경우 세부 뷰를 이전 인스턴스로 바꿀 수있는 방법이 있습니까? 텍스트 필드에 입력하는 것과 같은 세부 정보보기 용 상태를 기억하고 싶습니다.새 인스턴스를 만드는 segue 바꾸기
1
A
답변
2
할 수 없습니다. 거랑은 항상 내가이 SEGUE을 대체 사용하는 뷰 컨트롤러
1
의 인스턴스를하지만, MasterVC에 나는
-(BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender {
if ([identifier isEqualToString:@"showCalculatorViewController"]) {
if (self.splitViewController) {
NSObject *currentDetail = [self.splitViewController.viewControllers lastObject];
if ([currentDetail isKindOfClass:[RootCalcViewController class]]) {
....
가 그럼 난 기존 VC의 새로운 속성을 작성, 구현 및 NO 돌아갑니다.
그러나 masterVC에서 탐색을 처리하기 때문에 초기 디테일보기 컨트롤러로 UINAvigationController가 없습니다.
또한 AppDelegate에서 올바른 세부 VC를 설정해야합니다 .FlishLaunchingWithOptions 생성 된 코드는 그것이 UINavigationController라고 가정합니다. 생성 된 MasterViewController와 마찬가지로 viewDidLoad. UINAvigationController 세부 정보를 바꾸면 앱 충돌이 발생하지 않게됩니다.
다른보기 컨트롤러를로드 할 때 "대체 단락"을 바꿉니다.
0
또는 DetailController에서 Singleton 패턴을 구현하고 + new, + alloc 또는 all 같은 호출을 싱글 톤 메서드에 전달할 수 있습니다.
관련 문제
- 1. 배열 값을 기반으로 새 인스턴스를 만드는 방법
- 2. ios에서 개체의 새 인스턴스를 만드는 방법은 무엇입니까?
- 3. Powershell에서 새 ExeConfigurationFileMap 인스턴스를 만드는 방법은 무엇입니까?
- 4. 새 인스턴스를 만드는 대신 조각을 업데이트 하시겠습니까?
- 5. 클래스 개체 상자()의 새 인스턴스를 만드는
- 6. Sql Server 2005의 새 인스턴스를 만드는 방법
- 7. 어떻게 새 인스턴스를 만들
- 8. 새 인스턴스를 사용하여 인스턴스를 직접 교체하는 경우
- 9. 새 줄 바꾸기 | PHP
- 10. C#에서 DLL을로드하고 새 인스턴스를 만드는 방법은 무엇입니까?
- 11. 전제 조건을 기반으로 새 인스턴스를 만드는 가장 좋은 방법
- 12. RestKit 0.10.1 : NSManagedObject 하위 클래스의 새 인스턴스를 만드는 방법은 무엇입니까?
- 13. MVVM을 위반하지 않고 뷰에서 컨트롤의 새 인스턴스를 만드는 방법
- 14. 저장소 패턴을 사용하여 개체의 새 인스턴스를 만드는 올바른 방법은 무엇입니까?
- 15. 속성 모음을 재설정하거나 새 인스턴스를 만드는 것이 더 빠릅니까?
- 16. 동적 람다와 일리노이로 개체의 새 인스턴스를 만드는 방법은 무엇입니까?
- 17. 자동 크기 조정 그룹에서 새 EC2 인스턴스를 만드는 방법은 무엇입니까?
- 18. MySQL Workbench 5.2.25 CE에서 새 서버 인스턴스를 만드는 방법
- 19. 다른 사람들이 스택에 클래스의 새 인스턴스를 만드는 것을 방지하려면 어떻게해야합니까?
- 20. 기존 인스턴스에서 동일한 유형의 새 인스턴스를 만드는 방법은 무엇입니까? 코드의
- 21. 모든 호출에서 Rectangle.Size가 새 인스턴스를 만드는 이유는 무엇입니까?
- 22. 새 인스턴스를 사용하여 매개 변수가 필요한 클래스를 만드는 방법
- 23. COM 인터페이스의 새 인스턴스를 만드는 것이 왜 가능합니까?
- 24. 주문형 인스턴스를 만드는 방법은 무엇입니까?
- 25. QWebFrame 인스턴스를 만드는 방법
- 26. MX DataGrid에서 itemrenderer의 새 인스턴스를 만듭니다.
- 27. AppEngine은 필요없는 새 인스턴스를 시작합니다.
- 28. Android broadcastreceiver가 새 인스턴스를 만듭니다.
- 29. CRM CrmConnection의 새 인스턴스를 만듭니다.
- 30. 스키마를 추가하거나 새 인스턴스를 만드시겠습니까?
iPad 스토리 보드 (분할보기 컨트롤러 포함)로 작업하기 시작했는데 교체 대신 사용할 수있는 푸시 세그가 아닙니까? 아니면이 경우 프레임 워크가 밀어 넣기를 허용하지 않습니까? 이것은 아이폰 관용구에서 잘 작동합니다. – Rob
나는 밀어 넣기를 시도했다. 그러나 내가 뒤의 운항을 원하지 않는다라고 정했다. 나는 매번 새로운 인스턴스를 만들었다는 것을 기억합니다. 나는 각 세부 ViewController를 마스터 ViewController의 속성으로 선언하고 첫 번째 세그먼트에서 인스턴스화하는 것으로 해결했습니다. 그런 다음 performSegue를 호출하지 않고 수동으로 인스턴스를 상세보기로 밀어 넣거나 팝합니다. –
대체 방법을 사용하는 방법을 알고 싶습니다. 바꾸기 단절과 밀어 넣기 단절의 차이점은 무엇입니까? 대체 된보기 컨트롤러가 메모리에 남아 있으면 어떻게 복원 할 수 있습니까? – Matt