2012-04-02 2 views
0

Windows 기반 범용 응용 프로그램을 만드는 이전 버전의 Xcode에서는 iPhone 및 iPad 특정 파일로 프로젝트를 채우고 적절한 진입 점을 할당했습니다. 필요한 것은 장치 고유의 인터페이스를 생성하기 위해 iPhone/iPad 컨트롤러/xibs를 수정 한 것뿐입니다.Xcode 4.3을 사용하여 빈 범용 응용 프로그램 만들기

슬프게도 XCode 4.3은 더 이상 빈 응용 프로그램이 가장 가까운 창 기반 템플릿을 제공하지 않으며 엔트리 포인트를 적절하게 구성하는 방법을 모르겠습니다. 이것은 storyboarding을 사용하여 상당히 해협이지만 프로그래밍 방식 또는 xib 기반 작업 흐름을 사용하여 수행하려고합니다.

두 개의보기 컨트롤러와 xib : HomeViewController_iPhoneHomeViewController_iPad을 만들었습니다. 각 장치의 진입 점을 적절한 HomeViewController에 설정하기 만하면 응용 프로그램이 다운됩니다. 응용 프로그램 대리자를 하위 클래스로 만들려면 조금 더 할 필요가 있다고 생각하지만 진행 방법을 잘 모르겠습니다. 어떤 포인터?

답변

2

이것은 탐색 컨트롤러를 사용할 때도 마찬가지입니다. 장치에 따라 코드가 올바른 xib를로드합니다. 이것은 AppDelegate.mdidFinishLaunchingWithOptions에 있습니다. navigationControllerAppDelegate.h

UIViewController *rootViewController; 
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { 
    rootViewController = [[HomeViewController_iPhone alloc] initWithNibName:@"HomeViewController_iPhone" bundle:nil]; 
} 
else { 
    rootViewController = [[HomeViewController_iPad alloc] initWithNibName:@"HomeViewController_iPad" bundle:nil]; 
} 

navigationController = [[UINavigationController alloc] 
       initWithRootViewController:rootViewController]; 

self.window = [[UIWindow alloc] 
       initWithFrame:[[UIScreen mainScreen] bounds]]; 
[self.window addSubview:navigationController.view]; 
[self.window makeKeyAndVisible]; 
return YES; 

이 해결책으로 희망이 도움의 속성입니다!

+0

그래도 작동합니다. 감사합니다 jammycoder! –