콘텐츠로 건너뛰기
Home » 키밸류옵저빙

키밸류옵저빙

KVC 집합 접근자/변경자 메소드 작성방법

키밸류 코딩의 집합 접근자/변경자 메소드 to-many 관계의 프로퍼티에 대한 조정은 키밸류 코딩에서 배열 프록시를 통해서 이루어진다고 했다. 이 때 개별 원소를 추가/삭제/교체하는 작업의 효율을 높이고, 각 동작에 대해서도 KVO 지원을 가능하게 하기 위해서 배열 프록시와 연계하여 동작할 수 있는 집합 메소드를 추가로 정의하는 것이 강력하게 권장된다. 이들 메소드들은 기본적으로 NSMutableArray의 기본적인 액세스 메소드들에 키 이름이 혼합된 형태로, 일정한 규칙에 의해 이름 지어진다. 단, 키 이름이 메소드 이름에 들어가기 때문에 메소드명이 고정되지 않았고, 따라서 NSKeyValueCoding 레퍼런스 상에서는 소개되지 않는다. 집합 접근자… 더 보기 »KVC 집합 접근자/변경자 메소드 작성방법

[cocoa] 키-밸류 옵져빙 간단 예제

키-밸류 옵저빙은 (예전에 한 번 글을 쓴 적이 있는데… 자꾸 까먹음) 어떤 객체의 변경이 가해질 때 이를 다른 객체가 감지하도록 하는 매커니즘이다. 특정 객체가 KVO를 따른다면, 해당 객체에 옵저버를 붙일 수 있다. 이 때 옵저버는 변경 통지를 받을 객체가 된다. 옵저버를 붙일 때는 옵저버, 변경을 감지하고자하는 키패스, 옵션 등이 필요하다. 옵저버 쪽에서는 observeValueForKeyPath:ofObject:change:context: 메소드를 작성하면 된다. 만약 자신의 어떤 프로퍼티 값이 변경되는 것을 알아채고자 한다면 [self addObserver:self forKeyPath:@”self.aNumber.intValue” options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:null]; 이라고 하고, 이를 감지하는 메소드는 아래와 같은 식… 더 보기 »[cocoa] 키-밸류 옵져빙 간단 예제