2011-03-31 7 views

답변

2

Cocoa Bindings으로 찾으십시오.

그들은 모든 접착제 코드를 작성하지 않고 모델 (사전)과 동기화하여보기 (NSTextField)를 유지하도록 설계되었습니다. 그들은 배울 것이 약간 까다 롭지 만, 일단 당신이 그들을 이해하면, 그들은 매우 유용합니다.

귀하의 경우 NSTextField의 "값"바인딩을 코드의 속성에 바인딩하십시오.

- (void)controlTextDidChange:(NSNotification *)aNotification 

가 사전에 값을 수정할 :

대안은 NSTextFieldDelegate를 설정하고 구현하는 것입니다. 예를 들어, 사용자가 NSTextField있는 텍스트를 수정 이제 때마다

- (void)controlTextDidChange:(NSNotification *)aNotification { 
    [myDictionary setValue:[myTextField stringValue] forKey:@"MYDictionaryKey"]; 
} 

는, 텍스트 필드의 대리인이 콜백을 발사합니다. 이렇게하면 화면에 표시되는 것과 항상 같은 값을 사전에 사용할 수 있습니다. 당신은 사용자가 편집 할 때 변경 사항을 적용하려면

, 당신은 구현하는 것 :

- (void)controlTextDidEndEditing:(NSNotification *)aNotification 
+0

참고 코코아 바인딩은 오직 맥 OS X 아이폰 OS에서 사용할 수없는 것을 – JoshL

관련 문제