我想将我的MP3歌曲缩略图设置为我的Imageview;
我有一个包含5首歌曲的歌曲数组。我想将第一首歌曲缩略图设置为我的Imageview。
我的数组就是这个
mp3Array=[[NSArray alloc]initWithObjects:@"song",@"song1",@"song2",@"song3",@"song4", nil];
此行崩溃
MPMediaItemArtwork *itemArtwork = [song valueForProperty:
MPMediaItemPropertyArtwork];
崩溃日志
由于未捕获的异常'NSInvalidArgumentException'而导致应用程序失败,原因:' - [__ NSCFConstantString valueForProperty:]:无法识别的选择器发送到实例0x8dd0
我尝试使用此代码设置缩略图但未设置缩略图使应用程序崩溃。
代码低于......
MPMediaItem * song=[mp3Array objectAtIndex:delegate.count];
UIImage *image = nil;
MPMediaItemArtwork *itemArtwork = [song valueForProperty:
MPMediaItemPropertyArtwork];
if(itemArtwork != nil)
image = [itemArtwork imageWithSize:CGSizeMake(100,100)];
[imgView setImage:image];
我可能错了。
帮我解决这个问题......
提前感谢..
答案 0 :(得分:1)
好。这是您的问题:您的数组似乎包含NSString对象:
mp3Array=[[NSArray alloc]initWithObjects:@"song",@"song1",@"song2",@"song3",@"song4", nil];
如果您希望能够从数组中检索MPMediaItem
个对象而不是MPMediaItem
个对象,那么这些对象必须是NSString
个对象。
答案 1 :(得分:0)
如果您声明UIImage *image = nil;
,则没有ivar image
。将该行替换为UIImage *image = [[UIImage alloc] init];
。因此,您可以在imagewithSize
- 语句之后使用if
设置图片。