당신은 뷰 컨트롤러에 대한 두 xibs을 만들 수 있습니다.
당신이 파일이있는 경우
...
MyViewController.m
MyViewController.h
그런 다음 당신이 xibs를 추가 할 수 있습니다 ...
MyViewControllerXib1
MyViewControllerXib2
그냥 "파일의 소유자"MyViewController을합니다. 그런 다음
당신이 호출 할 수있는 최초의 XIB의 UI 레이아웃을 필요로 ...
MyViewController *controller = [[MyViewController alloc] initWithNibName:@"MyViewControllerXib1" bundle:[NSBundle mainBundle]];
당신이 호출 할 수있는 두 번째 UI를 필요
...
MyViewController *controller = [[MyViewController alloc] initWithNibName:@"MyViewControllerXib2" bundle:[NSBundle mainBundle]];
목적 당신 get은 똑같지 만 UI를 배치 한 펜촉은 바뀔 것입니다.
그냥 큰 소리로 여기 생각하는 또 다른 방법.
또한 펜촉없는의 ViewController를 만들 수 있습니다.
는 그런 다음 펜촉이 각각의 두 서브 클래스를 생성합니다. 이제 코드를 재사용하고 레이아웃을 분리 할 수 있지만 "마스터"컨트롤러의 각 하위 클래스에 미세 조정을 적용 할 수 있습니다. 이 마스터 뷰 컨트롤러에서 원하는대로
그런만큼 서브 클래스를 생성 할 수 있습니다.
사용 스토리 보드
그냥 스토리 보드에 새로운의 ViewController 개체를 끕니다. 클래스를 뷰 컨트롤러 클래스로 변경하고 UI를 설정하고 컨트롤을 코드 등으로 드래그합니다. 그러면 모양이 다르지만 동일한 기능 코드를 공유하는 두 개의 화면이 표시됩니다.
이것은 단지 내가 대신 첫 번째하지만 사용하여 스토리 보드에서 말과 동일합니다.
일반적으로 각 컨트롤러에는 자체보기가 있습니다. 물론 코드 중복을 피하기 위해 뷰를 재사용 할 수있는 방식으로 모델링해야합니다. 이 문제에 문제가 있으면 MVC 구조를 재고해야합니다. – GGrec
동일한 컨트롤러에서 여러 개의 동일한 뷰에서 콘센트를 가져 오는 것이 "정확합니까?" – Bob
"바보 같으면 작동하지만 바보가 아니야." – GGrec