Call a selector in a different class

邊看內部iOS Project邊做練習,發現專案除了第三方的引用,完全沒code reuse耶XDD
這邊記錄一下怎麼改寫

假設A class內有個button,按下去會執行saveArray這個function
但是很多class都會執行一模一樣的saveArray,為了方便與易於維護,將saveArray移至MyLibrary class

●原本是所有function硬幹全寫在一個A class
[saveButton addTarget:self action:@selector(saveArray) forControlEvents:UIControlEventTouchUpInside];

此處的saveArray位於A class


●改呼叫MyLibrary class
[saveButton addTarget: [MyLibrary class] action:@selector(saveArray) forControlEvents:UIControlEventTouchUpInside];

此處的saveArray位於MyLibrary class,以後其他B、C、D class都可這樣寫,不用再瘋狂複製saveArray到各個class了

沒有留言: