如何创建一个新的ITLibMediaItem对象?

问题描述:

我正在尝试构建一个可与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),但没有发现初始化,可以帮助...

我找到它。 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];