Я использую структуру медиаплеера, чтобы получить обложку воспроизводимой в данный момент песни, но каждый раз, когда воспроизводится песня, в которой нет обложки альбома, UIImageView, в который я загружаю обложку, пуст. Есть ли способ иметь замещающее изображение, которое отображается каждый раз, когда воспроизводится песня без обложки?
Медиаплеер без заполнителя обложки альбома
Ответы (3)
Вот как я использую заполнитель для песен, у которых нет обложки:
artworkImageView = [[UIImageView alloc] initWithFrame:CGRectMake(x,y,160,160)];
CGSize artworkImageViewSize = artworkImageView.bounds.size;
artwork = [currentItem valueForProperty:MPMediaItemPropertyArtwork];
if (artwork != nil) {
artworkImageView.image = [artwork imageWithSize:artworkImageViewSize];
}else{
artworkImageView.image = [UIImage imageNamed:@"NoAlbumArt.png"];
}
person
WrightsCS
schedule
06.09.2011
Хм, спасибо, но это не сработало. UIImageView по-прежнему пуст, noAlbumArt.png отображается только тогда, когда я закрываю приложение iPod, которое воспроизводится в фоновом режиме... есть идеи?
- person kopproduction; 06.09.2011
NoAlbumArt.png
должен быть в вашем комплекте. Опубликуйте код, на который вы подаете иск, потому что это отлично работает для меня.
- person WrightsCS; 06.09.2011
Я столкнулся с той же проблемой... в основном он отлично работает на симуляторе, но не на реальном устройстве... вместо этого я сделал следующее:
artworkImageView = [[UIImageView alloc] initWithFrame:CGRectMake(x,y,160,160)];
CGSize artworkImageViewSize = artworkImageView.bounds.size;
artwork = [currentItem valueForProperty:MPMediaItemPropertyArtwork];
if (artwork != nil) {
artworkImageView.image = [artwork imageWithSize:artworkImageViewSize];
if(artworkImageView.image == NULL){
artworkImageView.image = [UIImage imageNamed:@"NoAlbumArt.png"];
}
}
и это, похоже, решило проблему, поэтому оно работает как на симуляторе, так и на реальном устройстве.
person
R.J.
schedule
22.05.2013
Прежде чем вносить изменения, убедитесь, что для UIImageView установлено значение «Соответствие пропорций», которое сработало для меня. Это не сработало, когда у меня была «Масштаб для заполнения».
person
Sai Jithendra
schedule
29.12.2014