ios - 启动屏幕中的 PDF 矢量图像,在设备上无法正确缩放
问题描述
我正在为我的启动屏幕使用故事板。我的启动屏幕中有一个 UIImageView 和一个 UILabel。对于 UIImageView 的图像,我使用的是位于 Assets.xcassets 中的 .pdf 图像。我的图像的默认大小是 25x25 像素,但由于它是矢量图像,它应该能够无限缩放。UIImageView 有约束(与superview 即设备屏幕等宽,纵横比为1:1,在superview 中居中)。UIImageView 具有内容模式“Aspect fit”。该图像在情节提要和模拟器中显示良好。它在真实设备上看起来并不理想:图像的大小是正确的(适合屏幕的宽度),但图像是像素化的。由于它在模拟器上运行良好(未像素化),我希望它在设备上也能正常运行。我知道其他人也有类似的问题,比如根本没有显示图像,并重新启动设备或 Xcode 解决了这个问题,但这对我来说不是。这就是为什么我认为我的问题有所不同,因为图像出现了,它只是像素化了。如果有帮助的话,我想准确地说我的矢量图像有不同的颜色。
我已经尝试过基本的东西,比如:重启设备、重启 Xcode、清理构建文件夹、删除派生数据、从设备中删除应用程序。
解决方案
这是我发现的一种解决方法:我使用图像编辑器将 pdf 图像的默认大小手动更改为更大的值,例如 1000x1000 像素,然后将图像添加回 Xcode。第一次图像根本没有出现,然后我关闭设备并重新启动它。我从 Xcode 再次构建并运行,现在它每次都可以工作。
它有效,但我对这种解决方法并不完全满意,所以如果其他人想出更好的方法,我很感兴趣!
推荐阅读
- excel - 按特定数字递增范围内的值
- android - 在flutter中从firestore获取这些数据后,我想对数据进行洗牌
- asp.net - 如何使用 MVC 5 在控制器外部访问 HttpContext?
- azure-devops - 条件内带有 bash 表达式的 Azure Pipeline
- c# - 我想调用一个位于多个 GameObjects 上的脚本上的函数。但我希望该函数在该实例中仅激活一个对象
- r - 在这种情况下如何正确使用 label_wrap_gen ?
- sql - 从同一张表中计算雇用后的年数
- javascript - 获取 SVG 地图以在点击时更改颜色
- amazon-web-services - 无法连接到 vpc 外部的数据库
- powershell - Powershell - 以递归方式将文本附加到子目录中的文件名末尾