2017-02-16 14 views
0

저는 iTunes에서 작동하는 앱을 제작하려고합니다. 그래서, 내 프로젝트에 프레임 워크를 가져온 작은 클래스를 생성, 단지 다음과 같은 목적을 학습 : 새 ITLibMediaItem 개체를 만드는 방법은 무엇입니까?

-(NSMutableArray *)processMediaItems:(NSArray *)mediaItems { 
    NSMutableArray *titles = [NSMutableArray new]; 

    if (mediaItems) { 
     for (ITLibMediaItem *item in mediaItems) { 
      [titles addObject:[item.title]]; 
     } 
    } 
    return titles; 
} 

가 그럼 난 그것을 위해 단위 테스트를 만들기로 결정하고, 한 다음

- (void)testExample {  
    ITLibMediaItem *mediaItem = [[ITLibMediaItem alloc] init]; 
    //mediaItem.title = @"I Still Haven't Found What I'm Looking For"; 

    NSMutableArray *mediaItems = [NSMutableArray new]; 
    [mediaItems addObject:mediaItem]; 

    MyClass *mc = [MyClass new]; 
    NSMutableArray *titles = [mc processMediaItems:mediaItems]; 
} 

title 속성은 읽기 전용입니다.

내 질문은, 어떻게 제목으로 새 ITLibMediaItem 개체를 만들 수 있습니까? API (ITLibMediaItem)를 읽으려고했지만 초기화가 도움이되지 않았습니다.

답변

0

찾을 수 없습니다. ITLibMediaItem의 속성은 setValuesForKeysWithDictionary을 사용하여 입력합니다.

NSMutableDictionary *properties = [NSMutableDictionary dictionary]; 
[properties setObject:@"I Still Haven't Found What I'm Looking For" forKey:@"title"]; 

ITLibMediaItem *mediaItem = [[ITLibMediaItem alloc] init]; 
[mediaItem setValuesForKeysWithDictionary:properties]; 

NSMutableArray *mediaItems = [NSMutableArray new]; 
[mediaItems addObject:mediaItem];