我有一个在我的 iPhone 4 上运行良好的程序。它使用我创建的 UIView 类(称为 TestView)来使用 Quartz 绘制图形(非常简单的图形,例如几条 CG 线和圆)。但是,我需要利用 iPhone 4 上新的更高分辨率屏幕。目前,确保与 iPhone 3 的向后兼容性,在代码中移动单个“点”会导致 iPhone 4 屏幕上移动 2 个像素. 通过将 UIView 更新为 2.0 的比例因子,您可以将映射从逻辑坐标空间更改为像素空间,以利用 iPhone 4 的更高分辨率。这应该很容易;我只是找不到任何有关如何更改 UIView 比例因子的文档。
例如,我画的任何一条线,都应该由函数 CGContextSetLineWidth(context, 1.0); 指定。最终绘制一条 2 像素宽的线。我需要更改它以实际绘制一个像素宽。
我在 Apple 对支持高分辨率屏幕的解释中找到了解释,但没有更改比例因子的示例或方法:
UIView 文档提供了 contentScaleFactor 属性,但没有“设置”方法。将下面的行从 ttp:// 更改为 http:// 以变成 URL:
ttp://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/occ/cl/UIView