前提・実現したいこと
いつもお世話になっております。
表記の通り、デリゲートを使用する際、
必ず、処理譲渡先で、メソッドを記載しなくてはいけないかと思うのですが、
それを、UITableViewの
swift
1func tableView(_ tableView: UITableView, sectionForSectionIndexTitle title: String, at index: Int) -> Int { 2 3 return 3 4}
などのように、必須で書かなくてもよいデリゲートメソッドを設定したいのですが、
そのようなことはできるのでしょうか。
できるのであれば、やり方をご教授賜りたいです。
自身で調べた限りでは有効な方法が見つからず、難儀しております。
もしそのような方法がない、または、あまり推奨される方法でなければ、
諦めて、記述するようにしようと考えています。
よろしくお願いします。
該当のソースコード
swift
1//例になります。デリゲートの呼び元です。 2import UIKit 3 4protocol AclassDelegate { 5 func testFunc(_ image: UIImage?) 6} 7 8class A { 9 var delegate: AclassDelegate? = nil 10 11 init(){ 12 } 13 14 func testRun(){ 15 let testImage = UIImage() 16 self.delegate?.testFunc(testImage) 17 } 18} 19
swift
1//例になります。デリゲートの呼び先です。 2import UIKit 3 4class B: AclassDelegate { 5 6 var aInstanse: A = A() 7 8 init(){ 9 self.aInstanse.delegate = self 10 } 11 12 // ここで、デリゲートメソッドの記述を、しなくてもいいようにしたい 13} 14
補足情報(FW/ツールのバージョンなど)
ツール:Xcode9.4 使用言語:Swift4
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/11 03:09