Ios 让Swift类同时充当UIViewController子类和UITableViewDelegate

Ios 让Swift类同时充当UIViewController子类和UITableViewDelegate,ios,uiviewcontroller,swift,protocols,Ios,Uiviewcontroller,Swift,Protocols,我一直在用Swift编写一个应用程序,因此,我需要编写一个既包含子类UIViewController又符合多个协议的类(包括UIAlertViewDelegate,UITableViewDelegate,以及UITableViewDataSource)。我目前正在使用Xcode 6测试版,遇到了很多困难 我遇到的问题源于类声明: class TableAddition : UIViewController, UIAlertViewDelegate { 编译器似乎无法识别协议,当我尝试实现

我一直在用Swift编写一个应用程序,因此,我需要编写一个既包含子类
UIViewController
又符合多个协议的类(包括
UIAlertViewDelegate
UITableViewDelegate
,以及
UITableViewDataSource
)。我目前正在使用Xcode 6测试版,遇到了很多困难

我遇到的问题源于类声明:

class TableAddition :  UIViewController, UIAlertViewDelegate  { 
编译器似乎无法识别协议,当我尝试实现以下方法时:

@optional func alertView(alertView: UIAlertView!, clickedButtonAtIndex buttonIndex: Int) {

}
我得到一个错误,说“'optional'属性只能应用于协议成员”。尽管删除
@optional
可以消除错误,但我不相信该方法被识别为
UIAlertViewDelegate
协议的成员(Xcode从未为我自动完成方法实现)

这是一个源自Swift方面的问题,还是我的错误?

出自Swift书籍:

任择议定书要求

您可以定义协议的可选需求,这些需求 不必由符合协议的类型实现。 可选要求的前缀为
@Optional
关键字,作为 协议的定义

因此,
@optional
关键字仅在协议定义中用于标记 可选要求。它不用于协议方法的实现。 因此,删除代码中的
@可选
是正确的解决方案

Xcode不能自动完成协议方法似乎是当前的一个问题 测试版