2015-01-30 3 views
0

UILabelsUIOutlet 속성에 연결되어 있습니다. label-property-names가 문자열이기 때문에 KVC가 레이블의 텍스트 속성을 설정하고 싶습니다.self.typeOfAssetLabel.text에 대한 KVC 방법

그래서, 보통 (더 KVC) 그래서처럼 액세스하지 않을 것이다 :

이제
self.typeOfAssetLabel.text = @"Hello"; 

, 어떻게 그 KVC에있을 것입니다?

[self.typeOfAssetLabel setValue:@"test" forKey:@"text"]; 

을이 작품 :

나는 시도했다. 그러나이 방법은 문자열로 속성 이름 typeOfAssetLabel을 설정할 수 없습니다.

나는이

[self setValue:@"test" forKey:@"typeOfAssetLabel.text"]; 

하지만 난 얻을 이런 식으로 "하지 키 - 값에 적합하게 대응을 ..."오류가 작동합니다 생각합니다. 올바른 접근 방법은 무엇입니까?

답변

2

은 당신이 원하는 것은 : 경로에 하나 이상의 키있을 때 트릭 대신 forKeyforKeyPath을 사용

[self setValue: @"test" forKeyPath: @"typeOfAssetLabel.text"]; 

.

+0

위대한, 트릭을 지적 주셔서 감사합니다 :-) – brainray