2014-04-06 4 views
0

값을 변경할 수있는 뷰에 3 개의 개별 조각을 포함하는 값을 표시하고 있습니다.코코아 바인딩 : 값이 변경 될 때 확인

NSValueTransformer를 사용하여 (실제로는 3 개의 코어 데이터 엔티티를 바인드 된 arraycontroller에서 가져옴) 함께 넣습니다.

하지만 사용자가 값을 특정 범위로 변경하지 않아야하며 핵심 데이터 개체에 대해 3 개의 값을 다시 가져와야한다는 것을 알고 있어야합니다.

어떻게하면됩니까? NSValueTransformer에 루틴이 있습니까? 아니면 어레이 컨트롤러를 서브 클래 싱해야합니까?

답변

1

allowsReverseTransformation에 YES를 리턴하도록 NSValueTransformer 서브 클래스를 설정하고 reverseTransformedValue를 구현하는 코드를 작성할 수있는 경우 핵심 데이터 엔티티에 바인딩중인 속성에 대한 유효성 검증을 수행 할 수도 있습니다. 사용자가 무언가를 잘못했을 때 경고하는 팝업창이 나타납니다.

정확하게 우리가 말하고있는 것에 관한 더 자세한 정보가 없으면 ... 문자열이나 숫자 또는 그 무엇이든, 내가 얻을 수있는만큼 구체적입니다. 즉, reverseTransformedValue에 대한 코드를 작성할 수없는 경우 유효성을 검사하기 위해 사용자 입력을 3 개의 구성 요소로 분리 할 수 ​​없습니다.

관련 문제