好吧,这让我很苦恼。我有一个大小为 10x36px 的 PNG 图像。 当我尝试在我的任何 View 中使用它时,它都会调整大小。不是框架属性,这个保持不变。但在视觉上图像并不相同。
真实图像是这样的 . (抱歉,如果您几乎看不到它。那是因为它在白色前景上有白色背景)。
但是当我在模拟器中时(它也在设备上发生)它看起来像这样。
.
我没有使用约束(我关闭了 AutoLayout 以查找错误)。
我打印了那个按钮的框架,它的宽度、高度、x 和 y 值与界面生成器中的值一样。我把它们印在各处并响应不同的事件(我知道,这不是原因。我只是绝望了)。
这只发生在这个 PNG 上,特别是导致我在相同 View 中的其他 UIButton,但使用不同的图像,工作正常。
这个错误的原因可能是什么?
编辑:
尝试作为背景图片时效果会更好。但仍不完美。
最佳答案
在 Photoshop/Pixelmator 中将 png 图像放在空的 36x36 png 图像中,以停止调整大小并保留原始比例。
或者尝试在 Interface Builder 中或以编程方式将 View 内容模式设置为“纵横比”:
yourImageView.contentMode = UIViewContentModeScaleAspectFit;
原因可能是 UIBarButtons 处理图像的方式与 UIButtons 不同。 UIBarButtons 通常用于 UINavigationBars 或 UIToolbars,而 UIButtons 通常用于 View。
关于ios - 图像在运行时自动调整大小但不在 Interface Builder 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26938762/