在更改页面之前检查Swift 2

时间:2016-02-11 22:44:14

标签: ios swift

我正在学习如何在Xcode中创建应用。我想在页面上创建一些错误检查。如果用户尝试更改页面并且他们已对某些文字进行了更改,我想停止这些更改。我有变量,如果进行了更改,则设置为true,但我不知道如何使用它。

是否有可用于页面更改的覆盖功能?我原本以为我能够将其添加到您按下以更改页面的按钮,但是我的导航栏中没有显示。

override func shouldPerformSegueWithIdentifier(identifier: String, sender: AnyObject?) -> Bool {
    print("Hello")
    if count == 0 {
        print("No changesMade")
        return true
    } else {
        print("\(count) Changes Made")
        return false
    }
}

2 个答案:

答案 0 :(得分:0)

假设您的布尔标志名为editingBegan,并且在用户开始编辑后将其设置为true,并在用户保存后将其设置为false,您可以实现shouldPerformSegueWithIdentifer:,并在内部说{ {1}}。如果您正在编辑segue,则会跳过。

答案 1 :(得分:0)

您能否更具体一点或在此处发布您的代码片段?

根据我的理解,你至少可以做三件事来防止改变:

  • 使用property observer阻止更改。如果你正在使用一些 页面内的属性,定义要监视的属性观察者 财产价值的变化。

  • 如果用户正在文本字段中编辑内容,则使用文本域委托方法textField:shouldChangeCharactersInRange:replacementString:阻止更改

  • 如果用户即将触发segue,则使用shouldPerformSegueWithIdentifier:阻止更改