2013-03-17 9 views
8

私は、ログイン/シングルフォームとカスタムGoogleマップを備えたアプリケーションを作成する必要があります。私はiOSプログラミングには新しく、このアプリに必要なことを非常に早く学びたいと思っています。現在のView Controllerの実装ファイルから別のView Controllerをロードするにはどうすればよいですか?

ログインフォームのフロントエンドとバックエンドを作成しました。これは機能します。私は、資格情報を検証してエラーを引き起こすか、Googleマップを提示する「ログイン」ボタンによってトリガーされるアクションを持っています。

別のxibファイルを制御する別のビューコントローラでGoogleマップを表示したいとします。 View Controllerとxibファイルを作成しました。

私の質問は、現在のビューコントローラの実装ファイルに配置されたアクションから別のビューコントローラをロードするにはどうすればいいですか?

は今、私はこのコードを持っている:

UIViewController *mapViewController = 
       [[BSTGMapViewController alloc] initWithNibName:@"BSTGMapViewController" 
                  bundle:nil]; 

私はそれウィンドウの「ルートビューコントローラ」を作ると、おそらく(okです私のロジックを考える:D)トランジションを搭載できますか?

答えて

17

ViewControllerを別のものから開く場合は、IBActionのように定義する必要があります。しかし、viewControllerをプロパティとして作成することをお勧めします。

FirstViewController.h

@class SecondViewController; 

@interface FirstViewController : UIViewController 

@property(strong,nonatomic)SecondViewController *secondViewController; 
@end 

FirstViewController.m

-(IBAction)buttonClicked:(id)sender{ 
    self.secondViewController = 
        [[SecondViewController alloc] initWithNibName:@"SecondViewController" 
                   bundle:nil]; 
    [self presentViewController:self.secondViewController animated:YES completion:nil]; 

} 

あなたはこの

YourFirstViewController *firstViewController=[[YourFirstViewController alloc]initWithNibName:@"YourFirstViewController" bundle:nil]; 

self.window.rootViewController=yourFirstViewController; 
のようなあなたの AppDelegateクラスのもので rootViewControllerとしてのViewControllerを行う必要があります
+0

私はそれを試みたことを覚えています。私にテストをさせて、私は戻って報告します。 – Octavian

+1

何か試してみたら、コードを投稿するのはどうですか? – nsgulliver

+0

それは働いた。おかげで – Octavian

関連する問題