2009-11-19 3 views

답변

9

setValuesForKeysWithDictionary: 키 - 값 코딩 방법을 사용할 수 있습니다. 그것은 당신이 원하는 것을 정확하게합니다. 그냥 [someObject setValuesForKeysWithDictionary:propertiesDictionary]입니다.

0

확인이 (의사 코드) 같은 것을 함께

objectInstace.val1 = [dict objectForKey:@"val1"]; 
objectInstace.val2 = [dict objectForKey:@"val2"]; 

을 같은 :

setObjectProperties (ID) 개체 withValues ​​: (NSDictionary와 *) DICT 나는했습니다

+0

죄송합니다. 제 질문에 대한 답변이 충분하지 않았습니다. 나는 그것을 분명히했다. –

0

결코 이런 짓을하지 않습니다, 그러나 그것은 작동해야처럼이 보인다

을 dictonary의 각 key의 경우 :

NSString* setMethod = "set" + [key capitalizedString] + ":"; // This is pseudo-code. 
SEL setSelector = NSSelectorFromString(setMethod); 
[objectInstance performSelector:setSelector withObject:[dict objectForKey:key]]; 

(setMethod을 형성하는 코드는 연습 문제로 남겨 의사 코드 & 때문에의 Obj-C 문자열 조작은 끔찍합니다.)

+1

이것은 KVC 휠을 재발 명하고 있습니다. – Chuck

+0

확실히입니다! 나는 받아 들여진 대답을 투표하는 것을 추천한다. – Grumdrig