delegateの指定に
swift
1hoge.delegate = self
を用いているのをよく見るのですが
swift
1hoge.delegate = HogeDelegate{ 2 hoge(){ 3 //処理 4 } 5}
のような感じの指定方法はありますでしょうか?
状況によってdelegateに違う処理を指定したいのですが、調べても「hoge.delegate = self」ばかりだったのでどなたか教えていただけないでしょうか。
イマイチ何をしたいのか分からないのですが、self.hoge()の中で「状況によって違う処理」を行うのではダメなのでしょうか?単にdelegateを差し替えたいということであれば、適当なタイミングで適当なインスタンスをdelegateにセットすればいいと思いますが。
好みの問題だと思いますが、self.hoge()の中に「状況によって違う処理」を含めるとコードの見通しが悪くなってしまうのでできれば避けたいと思っています。delegateに対してself以外の指定の記述方法があれば知りたいと思っています。この「適当なインスタンスをdelegateにセット」というのはどのような記述になるのでしょうか
hoge.delegate = 適当なインスタンス ですが。インスタンスって分かりますか?
インスタンスは分かります、ただ「適当なインスタンス」というのがどのように記述すればいいのかが分かりません。例えば「UITableViewDelegate.delegate = hoge」だとセットに利用するhogeの定義はどのように行えばいいのでしょうか
回答1件
あなたの回答
tips
プレビュー