我有一个自定义的UIView(graphView),它基于iPad屏幕尺寸1024 x 768在drawRect中绘制一个复杂的图形。我想采用这个视图并将其缩小以便在iPhone上使用。我希望使用相同的绘图代码并缩小视图,而不是重新计算我的图形或创建位图缓存。在没有Interface Builder的情况下即时创建的视图 萎缩的最佳方法是什么? 我应该将视图放在UIScrollView中吗?
谢谢!
答案 0 :(得分:0)
如果可能,只需在绘图之前使用CGContextScaleCTM
之类的内容更改当前变换矩阵。这将扩展在光栅化之前发送到Core Graphics的所有测量值。
如果无论出于何种原因无法做到这一点,您应该考虑使用1024 * 768,但使用transform
将合适的CGAffineTransformMakeScale
应用于UIView
。这将以原始像素大小绘制,然后缩小为输出像素上的光栅操作,因此效率会降低。