【发布时间】:2014-07-11 04:53:56
【问题描述】:
我一直在用 Swift 编写一个应用程序,因此需要编写一个既是 UIViewController 的子类又符合多种协议(包括 UIAlertViewDelegate、UITableViewDelegate 和 UITableViewDataSource)的类。我目前正在使用 Xcode 6 Beta,遇到了很多困难。
我遇到的问题源于类声明:
class TableAddition : UIViewController, UIAlertViewDelegate {
编译器似乎无法识别协议,当我尝试实现以下方法时:
@optional func alertView(alertView: UIAlertView!, clickedButtonAtIndex buttonIndex: Int) {
}
我收到一条错误消息,提示“‘可选’属性只能应用于协议成员”。尽管删除 @optional 可以消除错误,但我不认为该方法被识别为 UIAlertViewDelegate 协议的成员(Xcode 从未为我自动完成该方法实现)。
这是源于 Swift 方面的问题,还是我的错误?
【问题讨论】:
标签: ios uiviewcontroller swift protocols