【问题标题】:iOS Storyboard change initial viewiOS Storyboard 更改初始视图
【发布时间】:2015-07-02 02:27:36
【问题描述】:

我一直在尝试通过放置此代码来更改应用委托中的初始视图

if(![[NSUserDefaults standardUserDefaults] valueForKey:@"userId"]) {
    LogInViewController* lvc = [[LogInViewController alloc]init];
    [self.navigationController pushViewController: lvc animated:YES];
}else {
    PerfilViewController *pvc = [[PerfilViewController alloc]init];
    [self.navigationController pushViewController: pvc animated:YES];
}

我的故事板中有swrevealviewcontroller,如下图所示,红色的是未登录的,蓝色的是登录时的

【问题讨论】:

  • 到底是什么问题?为什么不更改情节提要中的初始 ViewController?

标签: ios objective-c iphone


【解决方案1】:

试试这个。与其有多个箭头,不如只有一个指向第一个视图(LogInViewController)。然后,在 LogInViewController 的 viewDidLoad 函数中,放置您的检查代码。然后,如果用户登录,您可以从 LogInViewController 到 PerfilViewController 执行一个 segue;否则,请继续使用 LogInViewController。

viewDidLoad{
  [super viewDidLoad];
  if([[NSUserDefaults standardUserDefaults] valueForKey:@"userId"]){
      [self performSegueWithIdentifier:@"toProfile" sender: self];
}

【讨论】:

  • 我确实有那个,但它把它扔给我,我想摆脱它们 2015-07-01 13:32:27.124 BarApp[872:69539] 在分离的视图控制器上呈现视图控制器不鼓励 。 2015-07-01 13:32:43.540 BarApp [872:69539] 对 的开始/结束外观转换的不平衡调用。
  • 不久前有一个与您类似的问题。也许这可能对你有帮助。 stackoverflow.com/questions/28171723/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-02
  • 1970-01-01
  • 1970-01-01
  • 2012-10-28
  • 1970-01-01
  • 2012-05-28
  • 2022-01-23
相关资源
最近更新 更多