2011-07-06 2 views
1

확실하지 속성과. Client라는 개체가 있으며 다음과 같은 속성이 있습니다. 아이폰 SDK는 배열 (sqlite3를) 내가 그것을 작동하게 할 수 없었던 때문에이 아이폰 SDK에 가능하면

firstName, lastName, mobile, email. 

은 그때 그때 클라이언트의 정확한 속성 이름을 가지고 다음과 같은 값을 갖는 배열을 설정 한 다음

Client *clientObj = [[Client alloc] init:]; 

을 수행하여 설정.

clientObj.firstName = @"Robert"; 

사람이 비슷한 일을 할 수 있었던 일을 같이

NSArray *myArray = [[NSArray alloc]initWithObjects:@"firstName", @"lastName", @"email", @"mobile", nil] 

지금, 동일한 효과를 얻을이

clientObj.[myArray objectAtIndex:0] = @"Robert"; 

같은 일을 할 수 있습니까? 내가 이런 식으로 일을하고 그 이유는 내가, SQL 문이 필드에 null 값을 반환하는 경우 확인하는 IF 문이 그래서 따라서는 늘 clientObj와 내가 속성을 반복 할 수 있다고 생각하는 유일한 방법에 할당한다는 것입니다 클라이언트의 설정과 배열은 그 속성을 가지고 있습니다.

이것은 내가 작업 한 코드의 한 섹션입니다.

Client *clientObj = [[Client alloc] init]; 

    int i; 

    NSArray *myArray = [[NSArray alloc]initWithObjects:@"firstName", @"lastName", @"email", @"mobile", nil]; 

    for(i=0;i < [myArray count];i++){ 

    char *tempChar = sqlite3_column_text(selectstmt, i);        

    if (tempChar == nil) { 
    //is null dont assign 
    } else { 
    clientObj.[myArray objectAtIndex:i] = [NSString stringWithUTF8String:(char *)sqlite3_column_text(selectstmt, i)]; 
    } 

답변

1

대신 도트 구문을 사용하는 KVC에게 [clientObj setValue:@"Robert" forKey:[myArray objectAtIndex:i]];

+0

감사를 사용,이 일 – Robert

관련 문제