와우, 나는이 질문에 큰 생각을했습니다!스토리 보드의 하위 뷰 (다른보기 컨트롤러) 내의 버튼에서 새보기 컨트롤러를 밀어 넣을 수 있습니까
그래서 다른 뷰 컨트롤러 (메인 VC) 내에 "ContentView"라는 뷰 컨트롤러가 있습니다. 메인 VC에는 스토리 보드를 사용하여 생성 된 탐색 컨트롤러가 있습니다. 그리고 contentView는 Segmented Control의 옵션에 따라 3 개의 다른 뷰 컨트롤러 (vc1, vc2 및 vc3)를로드합니다. 이제 질문은 다음과 같습니다.
사용자가 세그먼트 컨트롤에서 옵션을 선택하면 나타나는 하위 뷰 (vc2) 중 하나의 단추에서 새보기 컨트롤러를로드하려면 어떻게해야합니까? 내 스토리 보드에서 볼 뷰 컨트롤러 (VC2)가 있지만 탐색 컨트롤러는 메인 VC에 있기 때문에
은, 분명히 나는 VC2 '파일의 소유자로 버튼에 동작을 연결할 수 없습니다.
- 나는 다음과 같은 코드로 접근을 시도 :
AppDelegate *del = (AppDelegate *)[UIApplication sharedApplication].delegate; UINavigationController *navigationController = (UINavigationController*)del.window.rootViewController; DetalleMisMarcas *detalleMarcas = [[DetalleMisMarcas alloc] initWithNibName:@"DetalleMarcas" bundle:nil]; [navigationController pushViewController:detalleMarcas animated:YES];
그러나 그것은 작동하지 않습니다.
나는이 포럼에서 해결책을 찾으려고 노력했지만 운이 없었습니다. 대부분 Xcode 4.2에는없는 메인 윈도우가 있다고 생각합니다.
마지막으로, 나는 3 파단로드 방법은 여기에 있습니다 :
-(IBAction)segmentCtrlChanged:(id)sender {
UISegmentedControl *seg = sender;
if (seg.selectedSegmentIndex == 0)
{
MMViewController *mm= [self.storyboard instantiateViewControllerWithIdentifier:@"MMView"];
mm.view.frame = CGRectMake(0, 0, 320, 240);
[contentView addSubview:mm.view];
}
else if (seg.selectedSegmentIndex == 1) {
MPViewController *mp = [self.storyboard instantiateViewControllerWithIdentifier:@"MPView"];
mp.view.frame = CGRectMake(0, 0, 320, 240);
[contentView addSubview:mp.view];
}
}
-(IBAction)mainSubView:(id)sender
{
MMViewController *mm = [[MMViewController alloc] initWithNibName:@"MTView" bundle:nil];
[contentView addSubview:theMTView];
mm.view.frame = CGRectMake(0, 0, 320, 240);
}
어떤 아이디어?
감사하지만 문제는 viewView (vc1, vc2 및 vc3)를 contentView라는 다른보기에서로드하는 데 문제가 없다는 것입니다. contentView는 기본보기의 모든보기를 고유 한 V C로 차지하지 않으며보기의 맨 아래 부분만을 차지합니다. 문제는 각보기 컨트롤러 (vc1, vc2 및 vc3)의 컨트롤이 기본보기의 하위보기 인 contentView 안에 있다는 것입니다. 그래서 내가하고 싶은 일은 새로운보기 컨트롤러를 기본보기로 밀어 넣는 것이지만 다른보기 컨트롤러에있는 다른보기 컨트롤러 (vc1 또는 vc2 또는 vc3)가있는보기에서 기본보기로 이동하는 것입니다. – naSh
죄송합니다. 정확히 무엇을 하려는지 명확하지 않았습니다. 이 경우 대리자 생성, MainView에 서브 뷰에 추가 할 것을 알려주려고 했습니까? 그게 효과가있을 수 있습니다. – Canopus