【发布时间】:2014-02-18 13:14:11
【问题描述】:
我被困在一个有趣的情况下,我的 rect x,y 值为 1.4、1.4,那么它将从哪个像素点开始放置 imageview.. 以及为什么.. 任何文档链接?
请点亮它。
谢谢。
【问题讨论】:
-
小心,你应该用点数而不是像素数来说话。但是,这不会改变问题的含义。
标签: ios objective-c coordinate-systems
我被困在一个有趣的情况下,我的 rect x,y 值为 1.4、1.4,那么它将从哪个像素点开始放置 imageview.. 以及为什么.. 任何文档链接?
请点亮它。
谢谢。
【问题讨论】:
标签: ios objective-c coordinate-systems
这不是从任何文档中获取的内容,但这是使用带有视网膜的 iPhone 在 iOS 7 上运行的快速代码所发生的:
view = [[UIView alloc] initWithFrame:CGRectMake(10, 50, 20, 20)];
view.backgroundColor = [UIColor greenColor];
[self.view addSubview:view];
view2 = [[UIView alloc] initWithFrame:CGRectMake(10.4, 70, 20, 20)];
view2.backgroundColor = [UIColor redColor];
[self.view addSubview:view2];
view3 = [[UIView alloc] initWithFrame:CGRectMake(11, 90, 20, 20)];
view3.backgroundColor = [UIColor blueColor];
[self.view addSubview:view3];
第一个视图是参考。我从代码中确定它的 x 原点是 20px。
这里要小心,10 点是 x=20px,11 点是 x=22px,因为视网膜 @2x 分辨率。您在代码中说出点数,并在屏幕上显示像素结果。
我尝试逐步更改 x 坐标。这是我发现的:
9.75
10.25
10.75
这是基于我自己对快速模拟的观察。不过我没有搜索任何官方参考资料。
这是具有 3 个位置的图像:10.1、10.4 和 10.8
【讨论】: