如何在Interface Builder中正确处理像素?

时间:2013-09-02 13:01:48

标签: ios cocoa-touch interface-builder retina-display

如何以正确的方式使用Interface Builder中的像素尺寸?例如,我有一个图像样机,其中所有尺寸和大小都以像素为单位:“此按钮左边有边距 - 例如30像素,此文本字段长100像素,依此类推”。如果我为Retina开发,我需要设置边距60是不是?在IB中只有Retina 3.5和Retina 4,并且没有非Retina。那么在IB中处理视网膜和非视网膜屏幕的正确方法是什么?如何正确设置UI元素的尺寸?

2 个答案:

答案 0 :(得分:2)

很可能你正在使用逻辑点而不是像素。这就是为什么你不应该担心视网膜和非视网膜,因为iOS会在运行时将逻辑点转换为像素。

当你说

时,你是什么意思
  IB中只有Retina 3.5和Retina 4,没有   非视网膜

答案 1 :(得分:1)

在ios中设计UI时,您需要记住所有度量都是以点为单位,而不是以像素为单位。因此,如果你有640x960大小的模型,你需要切割两个版本的所有元素,一个是非视网膜(320x480),需要像往常一样命名,即test.png和视网膜版本,大小为(640x960),名为test @ 2x。 PNG。请注意,图像名称相同,只有@ 2x不同,这实际上表示图像是视网膜iOS自动将决定显示哪个图像,无论是test.png还是test@2x.png。 关于界面构建器中使用的测量值,您可以始终以非视网膜尺寸进行计算,例如,如果您的按钮具有60px视网膜marigin,则需要将值设置为30。