2015-03-30 74 views
0

我從OSX BLE心率例如:https://developer.apple.com/library/mac/samplecode/HeartRateMonitor/Introduction/Intro.html,並在其上具有幾個問題:)OSX BLE和Xcode的澄清

1在Interface Builder中,一些控制是由標題和其他由控制型上市。例如,在下面的屏幕截圖中,「SpO2_bind」和「其他」文本字段分別由標題和控制類型文本字段列出。爲什麼區別?

see last two Text Fields

2)爲什麼綁定到的屬性和一些對伊娃一些控制?例如,左上角的文本字段(在主窗口心率監測儀)被綁定到「self.heartRate」(個體經營):

bind to property

而右下方的文本字段被綁定到「連接」 (沒有自我): bind to ivar

3)在centralManager:didDiscoverPeripheral:advertisementData:RSSI,什麼是的NSMutableArray *外設的目的,爲什麼不能在NSMutableArray中* heartRateMonitors可以直接使用?

回答

0

1)沒有區別。在Interface Builder中,如果您將控件從Object Library拖放到視圖中,則會在Dock中顯示它們的名稱,否則它們將顯示其默認名稱,這些名稱是UITextField等控件的名稱。您爲「標識」選項卡中的控件命名。給名稱讓你在UI中的搜索更容易,因爲它可以幫助你通過他們的名字來識別控件,這很容易區分,例如UserNameTextFiled,給你的印象是這個UITextField是用戶輸入他/她的用戶名。

2)在64位OS X中,通過定義一個@property,你可以得到等價的伊娃,因此不需要同時定義伊娃和@property。

第一種情況是self.heartRate,因爲它被定義爲@property和ivar,而且風箱只是連接,因爲它的防禦就像@property,我想。

3)當你有多對多關係時你應該使用 - mutablArrayForKey它返回一個代理對象。這就是所謂的鍵值編碼。

  • mutableArrayForKey:返回提供了一個 給定鍵指定的有序一對多的關係進行讀寫訪問一個可變的數組代理。
+0

1)是否認同督察>標籤允許一個綁定/通過代碼.m文件創建出口,還是我們仍然需要畫線在Interface Builder的控制?有什麼方法可以解決繪圖要求嗎? – tosa 2015-03-31 17:45:08

+0

2)我的印象是自動創建的伊娃在名字前面有_。無論這個例子看起來如何陳舊,它們都具有iv和屬性,其名稱與.h中定義的名稱相同。所以我認爲他們想在綁定時真正訪問該屬性。所以不會綁定到伊娃導致問題,因爲伊娃沒有通知什麼時候改變? – tosa 2015-03-31 17:46:55