我剛纔看到了這一點,我很困惑過,但我想這是正確的做法:
self.remoteArtwork = [[MPMediaItemArtwork alloc] initWithBoundsSize:CGSizeMake(600, 600) requestHandler:^UIImage * _Nonnull(CGSize size) {
UIImage *lockScreenArtworkApp = [UIImage imageNamed:@"lockScreenLogo"];
return [self.manager resizeImageWithImage:lockScreenArtworkApp scaledToSize:size];
}];
的方法 - 在我的單身「經理」的情況下-Class
- (UIImage *)resizeImageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize {
//UIGraphicsBeginImageContext(newSize);
// In next line, pass 0.0 to use the current device's pixel scaling factor (and thus account for Retina resolution).
// Pass 1.0 to force exact pixel size.
UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
[image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
你可以對這個MPMediaItemArtwork初始化器使用的「爲什麼」和「如何」(地獄......)有所瞭解嗎?這個街區有什麼期望?以所提供的大小返回UIImage?我在網上搜索,無法獲得合理的文檔。 –
@MottiShneor需要各種尺寸的圖像 - 控制中心,鎖屏,擴展控制中心,iPhone,iPad。如果您的媒體有不同大小的圖稿,則可以在iOS請求時返回適當的媒體。 –
但是無論大小如何,您都會一次又一次返回相同的圖像?將圖像的大小調整爲適合?這是否可以接受? –