当try 将导航栏按钮连接到Xcode 6中的ViewController的退出项时(不确定这是否是Xcode 6问题,但值得一提,因为它在测试版中),它在自定义类中找不到Swift函数.

用鞭子退出按钮

它应该找到的功能是:

@IBAction func unwindToList(segue: UIStoryboardSegue) {

}

我在视图上做了另一个按钮,以确保我可以用Swift操作IBAction,并且我写的是正确的.这很好:

@IBAction func test(sender: AnyObject) {

    NSLog("Test")
}

我见过this question个似乎是同一个问题,但根据答案,这应该是有效的.

Xcode 6正在测试阶段,当然,Swift是非常新的,但在认为它是一个潜在的bug之前,想看看是否有人遇到过这个问题.

推荐答案

这是Xcode 6的一个已知问题:

界面生成器无法识别在Swift类中声明的解除序列操作

为了避开它,你需要:

  1. class MyViewController换成@objc(MyViewController) class MyViewController
  2. 为MyViewController创建一个Objective-C头文件,其中包含一个重新声明segue操作的类别.

    @interface MyViewController (Workaround)
    - (IBAction)unwindToMyViewController: (UIStoryboardSegue *)segue;
    @end
    
  3. 在情节提要中, Select MyViewController的实例,清除其自定义类,然后

完成这些步骤后,您可以再次将按钮连接到退出项.

Xcode 6 Release Notes PDF, Page 10

Swift相关问答推荐

WWDC Swift并发会话中的厨房服务示例令人困惑

日期格式yyyyyy—MM—dd hh:mm:ss +0000到dd MMM,以swift格式表示""""

如何在向照片添加文本时定义文本对齐、文本背景的Alpha和在文本之前添加图像

SwiftUI map 旋转

如何在DATE()中进行比较

在Xcode SWIFT中运行用Ionic编写的函数

在Equatable上引用运算符函数==要求Dictionary.Values符合Equatable

Swift Property Wrappers-Initialization 失败并显示无法将‘Double’类型的值转换为预期的参数类型

SwiftUI 从任务中安全更新状态变量

签署GoogleSignIn-GoogleSignIn需要开发团队

如何有条件地依赖桌面与 iOS 的系统库?

单元测试和私有变量

理解 Swift 2.2 Select 器语法 - #selector()

swift中的SequenceType和CollectionType有什么区别?

将项目引用添加到 Swift iOS XCode 项目并调试

如何删除桥头而不出错?

如何在界面生成器中创建 UILayoutGuide?

MKAnnotation Swift

如何从一个可观察的数组创建一个可观察的数组?

Swift - 迭代 struct 对象时如何对其进行变异