좋아요, Cocoa Dev Central's "Build a Core Data Application" tutorial을 통해 작업 한 후에는 자습서의 코드와 .nib
파일을 사용하여 내 애플리케이션을 직접 제작하여 실험을 시작했습니다. 전반적으로 나는 그것으로 꽤 잘 관리 해왔다. 그러나 나는 걸림돌을 때린 것 같다.바인딩 Xcode 및 인터페이스 빌더의 MInefield
튜토리얼 에서처럼 두 개의 NSTextView
상자가있는 양식을 만들지 만, 동일한 항목 내의 다른 속성에 연결합니다. 다른 모든 컨트롤은 제대로 작동하고 레코드 사이를 이동할 때 값을 저장/새로 고침합니다 (두 번째 상자에서 해당 값을 저장하지 않으려는 일부 날짜 상자가없는 경우). 튜토리얼의 .nib
에 대한 모든 바인딩 설정과 NSArrayController
을 확인하여 문제가있는 부분을 확인할 수있었습니다. 첫 번째 텍스트 상자의 잠금을 해제 한 다음 동일한 설정으로 다시 연결하면 갑자기 마법처럼 작동합니다. 그러나 두 번째 상자는 동작하지 않으려 고하고 프로그램을 깨는 데 계속 사용됩니다 (디버거가 나타나서 모든 유형의 변수와 메모리 주소와 솔직하게 내 이해력을 넘어서는 것들을 나열합니다). 다음과 같이
현재 문제가되는 상자가 구성되어
Class: NSTextView
Value: Bound to `history`
Controller Key: selection
Model Key Path: `description`
Checked: Allows Editing Multiple Values Selection
Checked: Conditionally Sets Editable
Checked: Raises For Not Applicable Keys
여기에 무슨 일이 일어나고 있는지에 어떤 통찰력?
'description'은 NSObject에 정의 된 메소드입니다. 속성처럼 행동하도록 재정의하려고하면 아마도 문제의 원인 일 수 있습니다. –