2009-10-19 77 views
2

在我的小可可應用程序中,我通過NSObjectController的幫助將一個類的屬性綁定到了一些文本字段。到目前爲止,唯一的問題是:在NSObjectController使用當前輸入更新類之前,您總是必須保留一個文本字段。可可綁定:手動更新NSObjectController?

如果用戶沒有離開texfield並且馬上點擊保存/提交按鈕,這會成爲一個問題。該類不包含當前輸入。總是一件壞事。

我正在尋找一種方法來避免這種情況。就像告訴NSObjectController獲取當前的輸入,即使用戶退出了該字段。如果這是可能的,我可以在保存之前將這個命令放在save-Method中,並且一切都會好的。

回答

1

在確定按鈕的處理程序中發送commitEditing消息到您的控制器。這將做你所要求的。它是那樣簡單:

- (void)save:sender { 
    if (![self.myObjectController commitEditing]) { 
     // Handle error when object controller can't commit editing 
    } 

    // Other stuff 
} 
0

如果你到文本字段的value綁定,並檢查「不斷更新值」選項,這將導致新的價值要在模型對象上的每個用戶改變它時設置,即每次擊鍵一次。這將確保模型在關閉窗口之前具有正確的值,儘管它可能有點矯枉過正,具體取決於數據模型中設置的值的影響(如果有的話)。