2012-10-08 5 views
0

기본적으로 응용 프로그램을 시작할 때 탭보기 컨트롤러를 표시하고 첫 번째 탭을 표시하고 첫 번째 탭만로드합니다. 나는 동시에 뷰 컨트롤러의 나머지를 미리로드하고 싶다. 이 게시물을 발견했습니다 - Load All TabBar Views응용 프로그램 시작시 모든 탭보기 컨트롤러를로드하는 방법?

하지만 오류가 발생합니다. 탭바 컨트롤러의 을 viewDidLoad 방법으로 호출합니다. 나는 스토리 보드를 사용하고있다. 문제는 내가 오류가 발생했습니다 - 번들로 NIB를로드 할 수 없습니다 : 'NSBundle'

무엇이 누락 되었습니까?

편집 :

좀 더 간결하려고합니다 - TabBar의 4 개 가지 탭에 해당하는 4 뷰 컨트롤러가 있습니다. 사용자가 탭을 누르면 해당 뷰 컨트롤러가로드됩니다. 앱을 처음 실행하면 첫 번째보기 컨트롤러 만로드됩니다. 다른 뷰 컨트롤러는로드되지 않고 사용자가 탭을 탭한 후에로드됩니다. 모든 컨트롤러를 메모리에로드하여 화면에 표시되지 않도록 할 수 있습니다.

+0

그냥 .. 유를 얻을에 appdelegate.h 파일의 모든 뷰 컨트롤러를로드 사용자 정의 탭을 :) 만든다면 ... 당신은 모두를 보려는 한 번에 탭바 ?? 또는 그들을로드 ?? 하지만 왜? 정교하게 ... – IronManGill

답변

-2

내가 좋아하는 것이 다른 모든보기를로드하고 탭할 때 u를 눌러 점심을 준비 할 수 있습니다. :) u가 원하는 경우 U을로드하여 백그라운드로 빌드하고보기에 추가 할 수 있습니다. 하지만 u를 눌러야 U가 그것을 숨길 필요가 있습니다. 다른 뷰를 숨기고 싶습니다.

이 응답 작업 유

0

// 프로젝트

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
ViewController1 *view1=[[ViewController1 alloc]initWithNibName:nil bundle:nil ]; 
view1.tabBarItem.image = [UIImage imageNamed:@"1.jpg"]; 
UINavigationController *navi1=[[UINavigationController alloc]initWithRootViewController:view1]; 

ViewController2 *view2=[[ViewController2 alloc]initWithNibName:nil bundle:nil ]; 
view1.tabBarItem.image = [UIImage imageNamed:@"1.jpg"]; 
UINavigationController *navi2=[[UINavigationController alloc]initWithRootViewController:view2]; 
    NSArray *navi= [[NSArray alloc]initWithObjects:navi1,navi2,navi3,navi4,nil]; 

UITabBarController * bar=[[UITabBarController alloc]init]; 
NSArray *navi= [[NSArray alloc]initWithObjects:view1,view2,nil]; 
bar.viewControllers=navi; 
[self.bar setViewControllers:navi animated:YES]; 
self.window.rootViewController=self.bar; 
[self.window addSubview:bar.view]; 
    [self.window makeKeyAndVisible]; 
    return YES; 

} 

}