2012-12-12 3 views
-1

obj-C 프로그래밍을 처음 사용합니다. 그런 응용 프로그램을 만드는 방법에 관심이있었습니다. 실행하면 버튼이있는보기 컨트롤러가 표시됩니다. 이 버튼을 클릭하면 탭 바 컨트롤러가 표시됩니다. 첫 번째 화면을 모달보기로 표시해야합니까 아니면 다른 변형이 있습니까? 이 프로세스를 단계별로 설명 할 수 있습니까?tabbarcontroller 전의 첫 번째 화면

감사

+0

http://stackoverflow.com/questions/13551824/splashscreen- 체크 - 바 - 탑 - 바 - 탑 - 바 - 컨트롤러 업데이트/13552108 # 13552108 – aahsanali

답변

0

내가 이런 짓을 했을까 방법은 UINavigationController하는 것입니다. 다음이 RootViewController이 첫 번째보기입니다.

그런 다음 "첫 번째보기"에서 TabBarController을 누를 수 있습니다.

네비게이션 바를 원하지 않는다면 숨길 수 있지만 NavigationController를 사용하면보기간에 이동하기가 훨씬 쉬워집니다.

0

대리인을 사용하여 해당 기능을 구현할 수 있습니다. LoginViewControler를 만들고 그 안에 프로토콜을 정의하십시오. AppDelegate.m 파일에 해당 대리자 메서드를 구현합니다. 다음은 원하는 기능을 구현하기위한 sude 코드입니다.

// AppDelegate.h

@interface AppDelegate : UIResponder <UIApplicationDelegate,LoginViewControllerDelegate>{ 

LoginViewController *loginViewController; 

}

// AppDelgate.m

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

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
loginViewController = [[LoginViewController alloc]initWithNibName:@"LoginViewController" bundle:nil]; 
loginViewController.delegate = self; 
self.window.rootViewController = loginViewController; 

[self.window makeKeyAndVisible]; 

return YES; 

}

-(void)loginButtonPressed { 
[self.window setRootViewController:nil]; 

self.window.rootViewController = self.viewController;

}

//LoginViewController.h

@protocol LoginViewControllerDelegate <NSObject> 

@Required - (보이드) loginButtonPressed;

@end

@interface의 LoginViewController : UIViewController에 { ID 대리자;

}

@property (retain) id delegate; 

- (IBAction)loginButtonPressed:(UIButton *)sender; 

@end

//LoginViewController.m

- (IBAction)loginButtonPressed:(UIButton *)sender { 
      [_delegate loginButtonPressed]; 

}

관련 문제