Ios 重定向到另一个视图控制器
我正在为iPhone和iPad开发iOS应用程序。我有两个故事板文件,叫做:Main_iPhone和Main_iPad。我在这些故事板上做了一个loginscreen,并设置了一个LoginViewController。成功登录后,我想将用户重定向到Main_iPhone或Main_iPad中的另一个屏幕。我将此屏幕命名为Dashboard,并在Identity Inspector中指定自定义类DashboardViewController。我已经创建了这个文件 我正在为iOS7开发Xcode 5Ios 重定向到另一个视图控制器,ios,objective-c,uiviewcontroller,storyboard,Ios,Objective C,Uiviewcontroller,Storyboard,我正在为iPhone和iPad开发iOS应用程序。我有两个故事板文件,叫做:Main_iPhone和Main_iPad。我在这些故事板上做了一个loginscreen,并设置了一个LoginViewController。成功登录后,我想将用户重定向到Main_iPhone或Main_iPad中的另一个屏幕。我将此屏幕命名为Dashboard,并在Identity Inspector中指定自定义类DashboardViewController。我已经创建了这个文件 我正在为iOS7开发Xcode
如何将用户重定向到我的仪表板?有几种方法可以做到这一点。 首先是创建DashboardViewController并将其呈现给视图层次结构:
DashboardViewController *vc = [[DashboardViewController alloc] init];
[self presentViewController:vc animated:YES completion:nil];
另一个是在故事板中从登录到仪表板创建segue,当您想重定向时,只需调用:
[self performSegueWithIdentifier:@"SEGUE_IDENTIFIRE" sender:nil];
SEGUE_IDENTIFIRE是您需要在故事板中设置的一个SEGUE名称。有几种方法可以做到这一点。 首先是创建DashboardViewController并将其呈现给视图层次结构:
DashboardViewController *vc = [[DashboardViewController alloc] init];
[self presentViewController:vc animated:YES completion:nil];
另一个是在故事板中从登录到仪表板创建segue,当您想重定向时,只需调用:
[self performSegueWithIdentifier:@"SEGUE_IDENTIFIRE" sender:nil];
SEGUE_IDENTIFIRE是您需要在序列图像板中设置的序列名称。为此,当您完成登录时,您可以通过实例化UIStoryboard对象并显示必须使用UIStoryboad对象方法实例化的新UIViewController在序列图像板之间切换,示例如下:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:
@"myOtherStoryboard" bundle:nil];
[self presentViewController:[storyboard instantiateViewControllerWithIdentifier:
@"myViewOfOtherStoryaboard"] animated:NO completion:nil];
希望获得此帮助。为此,当您完成登录时,您可以通过实例化UIStoryboard对象并显示必须使用UIStoryboard对象方法实例化的新UIViewController在故事板之间切换,示例如下:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:
@"myOtherStoryboard" bundle:nil];
[self presentViewController:[storyboard instantiateViewControllerWithIdentifier:
@"myViewOfOtherStoryaboard"] animated:NO completion:nil];
希望这有帮助。有时候,如果用户只搜索“重定向到另一个视图控制器”,他们最终会遇到这种情况。所以这里有一个解决方案,我会寻找 Swift 3解决方案
let controller = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "yourViewControllerID")
present(controller, animated: true, completion: nil)
有时,如果用户只搜索“重定向到另一个视图控制器”,则最终会达到此目的。所以这里有一个解决方案,我会寻找 Swift 3解决方案
let controller = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "yourViewControllerID")
present(controller, animated: true, completion: nil)
当我尝试第一种方法时,我得到了以下错误:尝试显示不在窗口层次结构中的视图!您如何介绍LoginViewController?您可以显示代码吗?因为我还没有可用于登录的API,所以我制作了一些自定义代码,用于登录LoginViewController中的ViewDidLoad方法。如果(1==1)。在这句话中,我想重定向到仪表板。这不应该是任何问题,我要问的是如何显示登录到视图层次结构,它是您的根视图控制器,它是否嵌入到导航控制器中,等等?我想它是一个单视图控制器。(我真的不明白你的意思。但是在我创建了我的故事板文件之后,我在故事板中拖动了一个视图控制器)希望它足够清晰;)当我尝试第一种方法时,我得到了以下错误:尝试显示不在窗口层次结构中的视图!您如何介绍LoginViewController?您可以显示代码吗?因为我还没有可用于登录的API,所以我制作了一些自定义代码,用于登录LoginViewController中的ViewDidLoad方法。如果(1==1)。在这句话中,我想重定向到仪表板。这不应该是任何问题,我要问的是如何显示登录到视图层次结构,它是您的根视图控制器,它是否嵌入到导航控制器中,等等?我想它是一个单视图控制器。(我真的不明白你的意思。但是在我创建了我的故事板文件之后,我在故事板中拖动了一个视图控制器)希望它足够清晰;)