在 UIView 中查找特定点
Posted
技术标签:
【中文标题】在 UIView 中查找特定点【英文标题】:Finding specific points in UIView 【发布时间】:2011-02-08 13:41:39 【问题描述】:嘿。我正在构建一个 iPad 应用程序,我需要在地图 (UIImageView) 顶部标记特定点。我有以英寸为单位的坐标,但我无法将基于英寸的坐标映射到 ios 点,我已经用谷歌搜索了几个小时,但没有任何结论。
有什么想法吗?
谢谢。
【问题讨论】:
【参考方案1】:所以你有实际的单位并且想要将它们转换为点?
iPad 屏幕的对角线为 9.7 英寸。以点为单位,它是 1024x768。因此,应用毕达哥拉斯,对角线上有 1280 点。因此每英寸点数非常接近 132,我在其他地方也看到没有从第一原理计算。
所以,x 英寸的距离是 x * 132 点。例如。 1.5" 是 198 点。
【讨论】:
不是 1024*768 像素的分辨率吗?这给出了 PPI,即每英寸像素数。我需要知道如何在可可点中找到,无论该度量单位实际上是什么。 在这种情况下,可可点是一个像素。 OP是正确的。因此,对于横向的 iPad,您可以保证 iPad 的物理中心位于 (512,384) 附近。 “在这种情况下”是什么意思?我读过的所有内容都说一个点不等于一个像素。无论如何,乘以 132 并没有帮助。我要标记的点在 x 轴上是 1.28 英寸,在 y 轴上是 2.05 英寸,乘以 132 会显示完全不同的点。 我认为“在这种情况下”是指 iPhone 4 和其他 iPhone 机型的区别;前者每点的像素数是前者的两倍。如果您进入 Interface Builder,添加一个 169 x 271 像素的视图,运行应用程序并测量框,它将是 1.28 x 2.05 英寸。 在非视网膜设备上,1 点 = 1 像素。似乎没有获得 PPI 的方法(我曾经发现过),但它在 iPad 上为 132,在 iPod 和 iPhone 上约为 163(iPod 屏幕在物理上略小,但足够接近)。在视网膜设备上(即目前只有 iPhone 4)1 点 = 2 像素,这是我认为 Warren 选择“在这种情况下”的唯一原因——以防有人遇到 iPhone 问题并在未来,而且一般来说是准确的。以上是关于在 UIView 中查找特定点的主要内容,如果未能解决你的问题,请参考以下文章