Mediaplayerアルバムアートワークプレースホルダーなし
-
26-10-2019 - |
質問
私はメディアプレーヤーフレームワークを使用して、現在再生されている曲のアートワークを取得していますが、アルバムアートワークがない曲が再生されるたびに、アートワークをロードするUIIMAGEVIEWは空です。アートワークのない曲が再生されるたびに表示されるプレースホルダー画像を持つ方法はありますか?
解決
これは、アートワークを持っていない曲にプレースホルダーを使用する方法です。
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"];
}
他のヒント
私は同じ問題に遭遇しました...基本的にそれはシミュレータで完全に動作しますが、実際のデバイスではありません...代わりに次のことをしました。
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"];
}
}
そして、それは問題を修正したように見えたので、シミュレーターと実際のデバイスの両方で動作します
変更を加える前に、UIImageViewが私に合った「アスペクトフィット」に設定されていることを確認してください。 「埋めるためのスケール」があったとき、それはうまくいきませんでした。
所属していません StackOverflow