是否可以取消prepareForSegue:方法中的segue ?
我想在segue之前执行一些检查,如果条件不为真(在这种情况下,如果某些UITextField是空的),则显示错误消息而不是执行segue.
在我的unwind segue的unwind动作方法中,我将数据发送到远程数据库,并验证信息是否已成功存储在数据库中.
我计划让我的验证函数返回0或1,表示成功或失败,我打算将其作为条件使用.
我很好奇是否有办法在unwind动作方法中取消unwind segue?(或者我应该在展开segue开始之前进行此验证并防止unwind segue甚至以某种方式开始?)
我已经读过ios segue"取消",但我不知道他们说要覆盖的意思是什么
-[UIViewController shouldPerformSegueWithIdentifier:sender:]
Run Code Online (Sandbox Code Playgroud)
方法.我只是制作我自己的这个方法的自定义版本(见下文)并在unwind动作方法中调用它,并根据我的条件使它返回no/yes?我尝试用以下方法覆盖该方法:
- (BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender {
if (database verification fails) {
return NO;
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
我在我的展开动作方法中调用它,但它没有取消展开segue.
我做错了什么,还是有另一种方法可以在unwind动作方法中中止unwind segue?
我是iOS新手,所以如果这个问题听起来很傻,我很抱歉.谢谢你的帮助!