启动时继续
Segue at launch
我正在创建一个基本用户页面,如果用户未注册,我会在启动时自动跳转至另一个 UIViewController
。
我创建了一个设置为 false 的 bool,然后在 viewDidLoad
我添加了这个:
if (userIsRegistered == false) {
performSegueWithIdentifier("signUp", sender: nil)
}
我知道的相当基础,但它似乎并不能解决问题。
为了确保 segue 代码有效,我刚刚添加了一个 UIButton
并使用相同的代码做了一个 IBAction
然后它工作正常。然而,正如我提到的,如果我的变量 userIsRegistered
设置为 false.
,我想在启动时进行 segue
它不起作用,因为它是在 viewDidLoad 中执行的,其中可能无法使用所有 segues 组件。例如,如果您使用的是推送转场,则导航控制器 属性 可能尚未设置,或者导航控制器尚未准备好,...
要使其正常工作,您可以尝试在 viewDidAppear: 方法中执行此操作,但在这种情况下,您必须注意 segues 动画以使其正确显示。
为了避免动画问题并且因为我认为它更合乎逻辑,您可能需要在创建此控制器之前检查用户是否已注册:
- 用户注册 = 显示您的 "basic user page" 控制器
- 用户未注册 = 显示您的注册控制器
我正在创建一个基本用户页面,如果用户未注册,我会在启动时自动跳转至另一个 UIViewController
。
我创建了一个设置为 false 的 bool,然后在 viewDidLoad
我添加了这个:
if (userIsRegistered == false) {
performSegueWithIdentifier("signUp", sender: nil)
}
我知道的相当基础,但它似乎并不能解决问题。
为了确保 segue 代码有效,我刚刚添加了一个 UIButton
并使用相同的代码做了一个 IBAction
然后它工作正常。然而,正如我提到的,如果我的变量 userIsRegistered
设置为 false.
它不起作用,因为它是在 viewDidLoad 中执行的,其中可能无法使用所有 segues 组件。例如,如果您使用的是推送转场,则导航控制器 属性 可能尚未设置,或者导航控制器尚未准备好,...
要使其正常工作,您可以尝试在 viewDidAppear: 方法中执行此操作,但在这种情况下,您必须注意 segues 动画以使其正确显示。
为了避免动画问题并且因为我认为它更合乎逻辑,您可能需要在创建此控制器之前检查用户是否已注册:
- 用户注册 = 显示您的 "basic user page" 控制器
- 用户未注册 = 显示您的注册控制器