2011-04-22 1 views
0

내 프로젝트에서 변경할 수있는 사전에 바인딩 된 두 개의 텍스트 필드가 있습니다. 첫 번째 필드를 두 번째 필드로 나눈 세 번째 텍스트 필드를 만들고 싶습니다. 그러나 인터페이스 작성기의 바인딩 탭에서 모델 키 경로 내부에서이를 수행하려고 시도하면 인터페이스 키가 유효하지 않다고 표시됩니다. 어떻게 작동시킬 수 있습니까?코코아 바인딩 모델 키 경로 부문

답변

1

임의의 산술 연산을 수행하거나 키 또는 키 경로에서 임의의 식을 사용할 수 없습니다. 키는 객체가 제공하는 속성을 지정하고 키 경로는 속성 순서를 지정합니다. 콜렉션 운영자와 같은 몇 가지 변형이 있지만, 이들은 특정 설정에 적용되지 않습니다.

당신이 시도 할 수, 말했다 :

  • 사전 대신 사용자 정의 클래스를 사용하여 그 다른 두 속성을 기반으로 연산을 나타내는 속성을 노출. Key-Value Observing Programming Guide에 관한 섹션이 있습니다.

  • 사전을 산술 연산 결과로 변환하는 사용자 정의 value transformer을 사용합니다.

  • NSDictionary의 범주를 사용하여 산술 연산을 나타내는 속성을 노출합니다. 나는 개인적으로 이것이 과잉이라고 생각하고 정말로 추천하지 않을 것이다.

  • 바인딩을 전혀 사용하지 않고 응용 프로그램 대리인, 창 컨트롤러 또는보기 컨트롤러에서 직접 산술 연산을 수행하지 않습니다.