我正在尝试创建一个像素高度为UIView
。
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0,0,20,1)];
在非Retina iPhone上没问题,但在Retina上看起来像是2像素高。
怎么了?
答案 0 :(得分:17)
在视网膜上,实际像素和UIKit像素是不同的。
试试这个:
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0,0,20,1/[[UIScreen mainScreen] scale])];
答案 1 :(得分:1)
这是因为CGRectMake使用点而非像素。 在视网膜设备上,他们将dpi加倍,所以1点你现在有2个像素。 在非视网膜设备上 1点= 1像素。