私があなたのリクエストを正しく解釈した場合、アプリのデリゲートからセグエをトリガーすることでこれを達成できます。たとえば、アプリの起動後に次のことを実行するとします。
- ビューAを2秒間表示する
- ビューBにフェード
- ユーザーに[x]閉じるボタンをタップしてビューCを表示させる
ストーリーボードを使用している場合は、次のようなことができます。
初期ビューコントローラを設定しますMYAViewController
。追加しMYBViewController
ます。追加しMYCViewController
ます。
次に、発信セグエをからMYAViewController
に設定しMYBViewController
ます。このセグエを選択し、属性インスペクターから識別子を指定AToB
し、スタイルをModal
に設定し、遷移をに設定して、が選択されCross Dissolve
ていることを確認しAnimates
ます。
から別のセグエを追加MYBViewController
しMYCViewController
ます。このセグエを選択し、必要に応じて構成しますが、識別子は。にしBToC
ます。
次に、アプリデリゲートから、プログラムでセグエをトリガーします。
MYAppDelegateの場合:
...
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[self performSelector:@selector(showViewB)
withObject:nil
afterDelay:2.0]; // seconds
}
- (void)showViewB {
[self.window.rootViewController performSegueWithIdentifier:@"AToB"
sender:self.window.rootViewController];
}
...
すべてのビューコントローラ名とセグエ識別子が考案されていることに注意してください。明らかに、アプリケーションにとって意味のある方法でこれらのアイテムに名前を付ける必要があります。
お役に立てれば。