odorry様
さっそくのコメントありがとうございます。
環境はSwiftです。
odorry様が提示されたコードの通りです。
MyClassにvar delegate:MyProtocol?と変数を定義し、MyClass2のインスタンスを入れます。
MyClass2にdelegateメソッドであるhogeメソッドを実装しようとするとエラーが出ました。
lang
1@objc protocol MyProtocol{
2 optional func hoge(array:NSArray)
3}
4class MyClass{
5 var delegate:MyProtocol?
6 func foo(array:NSArray){
7 delegate?.hoge!(array)
8 }
9}
10class MyClass2:NSObject,MyProtocol{
11
12 func hoge(array:NSArray){//このメソッドが見つかりません。
13 }
14}
15
MyClass2のhogeメソッドは
lang
1func hoge(array:NSArray)-><<error type>>{
2}
MyClass2でhogeと入れたらで襟ゲートメソッドの候補が出てくるのですがhoge(array:NSArray)はなく
hoge(array:NSArray)-><<error type>>としか選択肢が出てこず、
MyClassでdelegate?hoge(array:NSArray)を呼んでもメソッドが見つからずエラーになります。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/11/29 13:23