2012-06-28 27 views
0

我想學習可可綁定,並有一個標題,名字和姓氏的簡單應用程序。可可綁定 - 爲什麼我會得到這些角色?

下面是結果的截圖,當我運行的應用程序:

enter image description here

我不明白爲什麼我得到的第一個和最後一個名稱的空字符串。

一切使用綁定建 - 沒有代碼。

的綁定是這樣的:

enter image description here

任何幫助,將不勝感激...謝謝!

編輯 - 這裏是名字的屬性值:

enter image description here

下面是管理對象子類的代碼...

@interface TestEntity : NSManagedObject 

@property (nonatomic, retain) NSString * title; 
@property (nonatomic, retain) NSString * firstname; 
@property (nonatomic, retain) NSString * lastname; 

@end 


@implementation TestEntity 

@dynamic title; 
@dynamic firstname; 
@dynamic lastname; 

- (void) awakeFromInsert 
{ 
    NSLog(@"%s", __FUNCTION__); 

    NSString * baseValue = @" "; 
    [self setValue: baseValue forKey: @"firstname"]; 

} // awakeFromInsert 

回答

2

您綁定,只顯示一個值「arrangedObjects.yourKey」控制。這提供了一個集合。如果您使用po someCollection在調試器控制檯中打印了相同的內容,則會看到相同的格式。

你想 「selection.yourKey」。這裏的「選擇」的意思是「在數組控制器中選擇任何對象」,其餘的keypath根植於該對象。

你可能習慣了在表視圖中使用「arrangeObjects」,其中一列(本質上是一個垂直堆棧的字段數組需要一個排序後的集合,這對你的左手錶(「主」視圖),但你的右手控制(「詳細信息」視圖(S))取決於它的選擇。

我希望這有助於。

+0

謝謝喬希ua,我試過了 - 你是對的 - 空值不存在,但是項目(名字和姓氏)未被正確綁定到實體。這樣當標題是1,我輸入一個名字,當我輸入標題2,姓名字段留... –

+0

也許我在做別的事情錯了.. –

+0

我不知道你在說什麼。爲什麼當只有標題字段被編輯時名稱字段會發生變化?如果名稱字段取決於標題,則不需要額外的代碼。如果你想要一個* new *項目,點擊添加按鈕(應該選擇新添加的項目)並編輯*它的* title/firstname/lastname。 –

0

在模型中,姓氏和名字可以爲null並且沒有默認值。取消選中每個屬性的can be null複選框。

+0

謝謝法布里斯..我修改的問題,以顯示屬性值對於「名字」。我在哪裏設置「可以爲空」?謝謝大衛 –

+0

呀。可選的複選框。取消選中它,你會得到一個空字符串,而不是空的。 –

+0

遺憾的是沒有..只是嘗試... :( –

相關問題