iOS 14 / XCode 12-以前的资产不再起作用?

时间:2020-09-18 17:09:52

标签: swift uiimageview ios14 xcode12

编辑:

我现在在将UIImageView设置为Assets.xcassets文件夹中的PDF文件时也遇到了问题。


相对较新。 (〜8个月),这是我第一次体验主要的软件版本。

我有一些代码在第一次启动时预加载数据以填充CoreData。在iOS 14中,存在一些图像从Assets文件夹中的PDF文件转换为JPEG二进制数据的问题。 (注意:不是所有图像,而是一些)

替换文件夹中的图像并不能解决问题,但是添加其他图像就可以了。

我还尝试了iOS 13模拟器,它(仍)可以正常工作并按预期加载数据。

这行代码似乎有问题:

// images: [UIImage]?

if let imagesArray = images {
for (i, imageData) in imagesArray.enumerated() {
    if let imagePNGData = imageData.jpegData(compressionQuality: 0.9) {

imagesArray使可选数组成为非可选。然后运行一个循环,将UIImage转换为Data。

但是,我添加了一些打印命令并得到了:

images?.count:  Optional(3)
Inside:  if let imagesArray = images {
Inside: for (i, imageData) in imagesArray.enumerated() {

New Loop: --- 0
(i, imageData):  0 :  <UIImage:0x600000a7e1c0 named(main: untAmberCelodonthree) {792, 612}>
inside:  if let imagePNGData = imageData.jpegData(compressionQuality: 0.9) { 
imagePNGData:  0 bytes
End: Loop 0:

New Loop: --- 1
(i, imageData):  1 :  <UIImage:0x600000a7df80 named(main: untAmberCelodonTwo) {612, 792}>
inside:  if let imagePNGData = imageData.jpegData(compressionQuality: 0.9) { 
imagePNGData:  0 bytes
End: Loop 1:

New Loop: --- 2
(i, imageData):  2 :  <UIImage:0x600000a7e2e0 named(main: untAmberCelodon) {612, 792}>
inside:  if let imagePNGData = imageData.jpegData(compressionQuality: 0.9) { 
imagePNGData:  1035328 bytes
End: Loop 2: 
End:  if let imagesArray = images {

我不太确定为什么UIImage没有被转换为数据...

但是,基本上,这是Xcode / IOS14问题吗?还是我做错了什么?

0 个答案:

没有答案