适用于iphone 5和iphone 4的CGRectMake

yon*_* ho 1 iphone uiimageview viewdidload ios

我知道iphone 5尺寸为640*960,iphone 4和之前的iphone尺寸为320*480.现在,我很困惑.如果我希望我的应用程序在这些不同的iphone上工作,如何计算图像视图或按钮的框架.例如,在viewDidLoad中,我有一个图像,它的大小是630*100,名称是someImage@2x.png,另一个大小是315*50,名称是someImage.png.图像相同但尺寸不同.然后我创建了一个带有CGRectMake(5,5,315,50)帧的UIImageView,它的大小为320*480.我是否必须这样做(iphone5)然后用CGRectMake(10,10,630,100)的框架为UIImageView设置另一个框架?我是否必须为这两种尺寸准备两个不同的UIImageView框架?

Hes*_*gid 5

iOS上的所有坐标和大小都使用点而不是像素.普通iPhone屏幕上的1点(320x480)等于1像素.Retina iPhone屏幕上的1点(640x960)等于2像素.

因此CGRectMake(5, 5, 315, 50),在Retina屏幕上自动转换为x = 10,y = 10,width = 630,height = 100.