網頁

顯示具有 Datasource 標籤的文章。 顯示所有文章
顯示具有 Datasource 標籤的文章。 顯示所有文章

2013年2月21日 星期四

Datasource and Delegate 的分別 (5) 一些最後細節

[iphone app 開發]

要再你的 viewController.h 中宣告你要依照 datasource 和 delegate 的 protocol 實作
且加入兩個陣列。


Datasource and Delegate 的分別 (3) 照著 datasource Protocol 辦事

[iphone app 開發] 完成datasource 的protocol.


ok, 知道了每個控制項(ex: picker view) 要實作自己的datasource and delegate 後,
那如果每個開發者都自己亂做,或是不照著apple 想要的作,那這個picker view 豈不是
相當難維護,且天下大亂嗎?

所以,apple 在document 中就寫明了,那些method 是 picker 的 datasource 必須實作的,怎麼實作,和回傳什麼值,delegate 也是,所以,換言之。


Datasource and Delegate 的分別 (2) 一些細節


[iphone app 開發]

上篇文章最後提到....

每一個控制器(picker view 之類的人),都會有自己各別的 datasource 和 delegate....

所以 picker view 有 UIPickerDatasource ,且

1. 控制項 Picker view 不管datasource 如何取得picker view 所需要的資訊, 這邊是需要
顯示的資料欄數。 Datasource 可能用 陣列,資料庫,plist 等等儲存資料,但是對於
picker 來說不重要,它也不想管,只要 datasource 能回給 picker view 想要的資訊即可,不管
datasource 內部是如何儲存資料。


Datasource and Delegate 的分別 (1) 主要分別

[iphone app 開發]

這兩個最快的分別,用一個例子來舉例

如果在畫面上有個 picker view,則....





[Datasource]
1.Picker view 會問 datasource 它該如何表現
2.datasource 會告訴他你有 9欄的數量需要show 在 iphone 手機的 picker view 中