2013-02-16 67 views
0

我將有幾個需要委託的uiimageview交互式sulasses。當他們中的每一個都被觸摸時,視圖控制器必須通過改變一些東西來響應。客觀c可可代表,概念

有一種方法是很好的慣例,那就是委託方法被所有的uiimageview子類實例調用?

該委託將是視圖控制器。

總的來說,這是一個很好的做法嗎?

+0

如果你問是否有一個方法被調用,而不是每個子類調用一個方法,那麼肯定是這樣。 – 2013-02-16 23:40:25

回答

2

一種方法更好。這將是一個不錯的選擇- (void)imageViewTouched:(UIImageView *)sender

你應該遵循DRY(不要重複自己)的原則,並消除你的應用程序代碼重複。所以你應該有獨立的方法,如果他們有單獨的邏輯。如果爲各種發件人執行相同類型的邏輯,則應該有一種方法。

+0

thx這麼多,不知道 – stackOverFlew 2013-02-17 00:08:10

+0

我更新了我的答案一點,因爲使用一種方法並不總是這樣的:) – 2013-02-17 00:22:34

+1

如果你傳遞一些有關對象的引用或信息,你仍然可以有一個方法與條件邏輯它正在委託。 NSNotification通過可選的用戶信息詞典參數具有此功能。 – uchuugaka 2013-02-17 01:11:25

1

絕對如此。傳入發件人,以便您可以根據誰向您發送郵件(如tableView:cellForRowAtIndexPath:)做出決定,並且您可以很好地實施委派模式。