如何使用 Xcode 的 xcassets 切片功能在 UIImageView 中正确显示图像?

How can I use Xcode's xcassets slicing feature to correctly display an image in a UIImageView?

我想使用切片功能(可用于使用 iOS 7 或更高版本的部署)来切片以下图像:

目前我在xcassets中做了一个新的图片集,并且添加了这个图片的两个版本。一个是 281x36 像素,另一个是两倍大小。然后我使用切片工具将两个图像切片如下:

我创建了一个 UIImageView 并将图像设置为 "testimage"。我使用了 "ScaleToFill" 模式,并且在预览中正确缩放了图像:

接下来,我 运行 代码以查看它在 iphone 6 模拟器中的外观,但我没有得到预期的结果:

似乎在设备本身 运行 上实际上并未使用切片功能。我玩了一段时间,确定部署目标 > 7.0(目前设置为 8.4)。我也检查了模拟器,只是为了确保它是用 8.4 模拟的,确实如此。

有人知道我做错了什么吗?

提前致谢!

好的,经过相当多的困惑后,我相信我找到了解决问题的方法:

我在导入和切片 JPG 文件时遇到了上面解释的意外行为。我决定先尝试将相同的图像转换为 PNG 文件,然后再尝试切片。一切正常!

我不确定为什么 JPG 文件没有正确切片,也许这是一个错误?或者也许我只是遗漏了一些东西。无论哪种方式,如果其他人有这个问题,我建议一个简单的解决方案是在导入图像集之前将您的文件转换为 PNG。