禁用情节提要跳转
disabled the storyboard jump
我已经创建了一个关于故事板的项目,故事板上有两个视图控制器,名为 'loginViewController','BViewController',loginViewController 上有一个登录按钮,我已经设置了登录按钮触发的 segues 操作是 BViewController。
在登录按钮的情况下,如果登录成功我想跳转到BViewController,否则禁用跳转,但看起来总是跳转到BViewController,我怎么让它不跳转?
if (loginResult)
{
[self.navigationController popViewControllerAnimated:YES];
}
else
{
}
您应该在 UIViewController 之间设置 segue,并在按钮上设置一个单独的 IBAction。在 IBAction 中使用这个:
if (loginResult)
{
[self performSegueWithIdentifier:@"jumpToBViewController" sender:self];
}
不要忘记在故事板上将 segue 的标识符设置为 "jumpToBViewController"。
稍微扩展一下@PeterLendvay 的回答:如果您将 segue 附加到按钮,则 segue 总是在用户单击按钮时触发(假设按钮已启用)。如果您想添加逻辑决定做什么,不要 link 直接转到按钮。
相反,在视图控制器之间进行连接。使用唯一标识符命名该 segue。
然后将 IBAction 附加到按钮。现在您可以在用户单击按钮时 运行 编码。在该代码中,决定是否应该触发 segue。如果确实要触发 segue,请调用 performSegueWithIdentifier 方法。
您也可以使用此方法让按钮在多个不同的转场之间做出决定。
我已经创建了一个关于故事板的项目,故事板上有两个视图控制器,名为 'loginViewController','BViewController',loginViewController 上有一个登录按钮,我已经设置了登录按钮触发的 segues 操作是 BViewController。
在登录按钮的情况下,如果登录成功我想跳转到BViewController,否则禁用跳转,但看起来总是跳转到BViewController,我怎么让它不跳转?
if (loginResult)
{
[self.navigationController popViewControllerAnimated:YES];
}
else
{
}
您应该在 UIViewController 之间设置 segue,并在按钮上设置一个单独的 IBAction。在 IBAction 中使用这个:
if (loginResult)
{
[self performSegueWithIdentifier:@"jumpToBViewController" sender:self];
}
不要忘记在故事板上将 segue 的标识符设置为 "jumpToBViewController"。
稍微扩展一下@PeterLendvay 的回答:如果您将 segue 附加到按钮,则 segue 总是在用户单击按钮时触发(假设按钮已启用)。如果您想添加逻辑决定做什么,不要 link 直接转到按钮。
相反,在视图控制器之间进行连接。使用唯一标识符命名该 segue。
然后将 IBAction 附加到按钮。现在您可以在用户单击按钮时 运行 编码。在该代码中,决定是否应该触发 segue。如果确实要触发 segue,请调用 performSegueWithIdentifier 方法。
您也可以使用此方法让按钮在多个不同的转场之间做出决定。