iOS 6和Xcode 4.5有一项称为"Unwind Segue"的新功能:
展开segue可以允许转换到故事板中的现有场景实例
除了Xcode 4.5发行说明中的这个简短条目之外,UIViewController现在似乎有几个新方法:
- (BOOL)canPerformUnwindSegueAction:(SEL)action fromViewController:(UIViewController *)fromViewController withSender:(id)sender
- (UIViewController *)viewControllerForUnwindSegueAction:(SEL)action fromViewController:(UIViewController *)fromViewController withSender:(id)sender
- (UIStoryboardSegue *)segueForUnwindingToViewController:(UIViewController *)toViewController fromViewController:(UIViewController *)fromViewController identifier:(NSString *)identifier
Run Code Online (Sandbox Code Playgroud)
展开segue如何工作以及它们可以用于什么?
我有一个使用故事板开发的ios5应用程序,当前在初始启动时显示标签栏控制器视图.我想在显示标签栏控制器之前显示登录屏幕.用户将输入他的用户名和密码,然后系统将对用户进行身份验证,然后如果成功,则显示标签栏控制器.
我已经尝试了以下3个选项但没有运气..任何想法?
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Option 1
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
PointsViewController *firstVC = [[tabBarController viewControllers] objectAtIndex:0];
UIViewController *loginViewController = [[LoginViewController alloc] init];
[firstVC.navigationController pushViewController:loginViewController animated:YES];
// Option 2
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
UIViewController *loginViewController = [[LoginViewController alloc] init];
[tabBarController presentViewController:loginViewController animated:NO completion:nil];
// Option 3
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
UIViewController *loginViewController = [[LoginViewController alloc] init];
[tabBarController presentModalViewController:loginViewController animated:NO];
return YES;
}
Run Code Online (Sandbox Code Playgroud)