如何在自定義控件上定義自定義可發送操作(可以通過InterfaceBuilder @ Xcode4連接)?如何在自定義控件上定義自定義可發送操作? (可以在IB中識別)
對於實例,UIButton可以調用許多事件的操作。 (Touch up Inside,Touch Up Outside ...等),並且我們可以通過Interface Builder將這些事件與IBActions連接起來。
請不要談論委託模式。就我個人而言,我認爲,實施多種協議使我們感到噁心,很難閱讀對象的核心角色。因爲選擇器名稱由發件人定義,而不是由控制器定義。我想要使用更清晰的控制器主題的可讀方法名稱。
因此,我討厭使用委託模式作爲基本的基礎架構,除非我開發出非常簡單的Hello Blah應用程序。
我認爲定義字段NSInvocation *作爲IBOutlet會很好。因爲它在同一時間抽象目標和選擇器。但現在Interface Builder不能識別它。
那麼,如何定義IB可識別的可發送動作。
PS。我知道擴展NSControl的CustomControl只能調用單個目標操作。我想要多個可發送事件,並且我想讓我的對象不能查看或控制。 (我的意思是輕量物體)
我認爲這種方法只是黑客的事情。而Interface Builder無法識別它。如果我想要擴展事件驅動的基礎知識,我不在乎蘋果的一個。因爲製作自己很容易。 – jeeeyul 2011-06-02 00:56:51