【问题标题】:Xcode 7.2.1 Making a Reset Button using a Button with SwiftXcode 7.2.1 使用带有 Swift 的按钮制作重置按钮
【发布时间】:2016-09-18 20:51:40
【问题描述】:

我正在尝试为我的应用制作一个重置按钮,它将 UI 重置为原始状态。我制作了一个 UIButton 并将其链接到 ViewController,但我不知道从这里去哪里。我尝试使用以下代码:

@IBAction func resetToOriginalState(sender: UIButton) {
    self.resetToOriginalState (sender: UIButton)
} 

它给了我以下错误:

源文件中的编辑器占位符

对不起,如果有一个明显的答案,但我对 Swift 和 Xcode 很陌生。

还有其他方法可以创建重置按钮吗?

【问题讨论】:

    标签: swift button xcode7 viewcontroller


    【解决方案1】:

    错误:

    源文件中的编辑器占位符

    是因为您使用 UIButton 类名称而不是实际按钮调用函数。

    @IBAction func resetToOriginalState(sender: UIButton { 
    
        // this line is wrong, you shouldn't have UIButton in here
        self.resetToOriginalState (sender: UIButton)
    
        // the line should read
        self.resetToOriginalState (sender: sender)
    }  
    

    这样,您将实际按钮传递给传递给resetToOriginalState的函数

    【讨论】:

    • 谢谢!这确实帮助了 Scriptable;我很感激。
    【解决方案2】:

    您应该向我们提供更多详细信息,因为这是特定于实现的。

    尽管如此,它不是很干净,但根据代码的架构,您可能能够生成视图控制器的新实例,销毁当前实例,然后呈现新实例。

    【讨论】:

      【解决方案3】:

      这取决于场景中的内容以及您需要重新加载的内容。据我所知,您不能真正将 ViewController 与自身隔离,但这里有几个选项:

      1. 按下按钮时尝试添加loadView()
      2. 复制视图控制器,并在两者之间切换。 (可能有风险并创造更多工作)
      3. 按下按钮时将变量重置为初始状态

      【讨论】:

        【解决方案4】:

        似乎你有太多IBAction 用于同一个按钮,检查你的代码中有多少次@IBAction func resetToOriginalState(sender: UIButton) 并从引用接口列表中删除引用以清理它,如果只有一个:

        【讨论】:

        • 我的代码中有两个@IBAction 实例,一个用于此重置按钮,另一个用于另一个按钮。但是,我需要保留它们以使我的应用程序正常运行。无论如何要创建一个重置按钮?
        • 我的意思是在代码和按钮的引用界面列表中应该只有一个 ibaction,所以如果你有 2 个按钮,每个按钮必须有这 2 个方面(代码和参考链接)。跨度>
        猜你喜欢
        • 1970-01-01
        • 2017-07-01
        • 1970-01-01
        • 2017-03-04
        • 1970-01-01
        • 2011-04-28
        • 2015-09-18
        • 1970-01-01
        • 2013-03-11
        相关资源
        最近更新 更多