2011-10-05 33 views
0

我在界面生成器中设置的UIView中有一个UIButton(类型:自定义),将默认状态的图像添加到视图大小。当我尝试使用iPhone时,我会看到图像的视网膜版本,当我通过点击它来突出显示它时,它会在突出显示时发生像素化。UIButton图像在高亮显示时得到像素化

有趣的是,当我通过代码更改UIButton的图像时,没有像素化的错误。

有没有人知道一个解决方法,而不是通过代码加载我所有的按钮图像?日Thnx!

+1

检查[UIButton的]的文档(http://developer.apple.com/library/IOS/documentation/UIKit/Reference/UIButton_Class/UIButton/UIButton.html)来看看如何正确做到这一点。我强烈建议学习如何打破对Interface Builder的依赖。你只会改进为开发人员。 – Hyperbole

+5

我完全不同意这一点。如何不使用提供的工具来提升自己作为开发人员。 –

+0

我同意夸张。当我升级xCode时,它会被搞乱很多次,但没有界面生成器的依赖关系,我一直在工作。除此之外,移植应用程序也更容易。 – MiiChiel

回答

3

在界面构建器中,您可以指定常规状态和突出显示的状态图像:只需选择所需的“状态配置”并配置按钮即可。

如果您将图像指定为默认状态,并且图像的“高亮”状态为空,并选中了“高亮调整图像”属性,则该按钮将使用默认状态图像,按下。

但是,如果您的高亮状态图像也设置了,则该按钮将使用该图标,而不是生成自己的高亮显示。

其他要检查的事项:确保图像的两个版本都包含在项目中。

E.g.假设你有“button_image.png”和“[email protected]”。确保它们都在项目中。另外,当你在界面构建器中指定图像时,使用标准定义图像的名称,cocoa会自动选取2x版本 - 也就是说,您会将“button_image.png”作为按钮的图像,而不是“[email protected]

希望这有助于