デリゲートパターンを確実に理解することを学びます。 iOSのコード例の多くは、を含む2つのViewControllers
を使用しています。ストーリーボードまたはセグを含まないデリゲートパターン
ViewController
をデリゲートプロトコルで1つだけ使用し、segueまたはストーリーボードは使用しないようにします。 ViewController
には、単純なデリゲートメソッドを実行するためのボタンがあります。
ViewController
クラス:
class ViewController: UIViewController, theDelegate {
override func viewDidLoad() {
super.viewDidLoad()
}
// It is here I got stuck
// How do I set delegate = self without out involving segue or the storyboard at all? Do I need to instantizate the dedecated delegate class and how?
// To conform to delegate -- theDelegate
func add(num: Int) {
// Output result on ViewController
}
func minus(num: Int) {
// Output result on ViewController
}
}
専用Delegate
クラス:
protocol theDelegate: class {
func add(num: Int)
func minus(num: Int)
}
class ClassDelegate: NSObject {
weak var delegate: theDelegate?
func x() {
delegate?.add(num: 100)
}
}
あなたの返事をありがとうございました。 @PhillipMills私はあなたが何を意味しているのかよくわからない、私はデリゲートパターンを適切に使用していないと言っていますか? – Tony