CGAffineTransform Rotation() 正在调整 iPad 上的图像大小?

Posted

技术标签:

【中文标题】CGAffineTransform Rotation() 正在调整 iPad 上的图像大小?【英文标题】:CGAffineTransformMakeRotation() is resizing image on iPad? 【发布时间】:2010-12-14 21:17:30 【问题描述】:

我是我的应用程序,我有一个 UIImage 视图,它在我的视图的 nib 文件中设置了一个图像。在我的视图控制器的视图确实加载方法中,我使用以下行旋转图像,

self.myImage.transform = CGAffineTransformMakeRotation(-126 * M_PI / 180);

现在在我的应用程序的 iPhone 版本上,我的图像旋转了 -126° 就好了。但是,我最近才开始开发我的应用程序的 iPad 版本,当我使用上面的代码行旋转图像时,它也会调整大小?

就我的眼睛看来,宽度和高度似乎正在交换?

我错过了什么吗?

注意:如果它有助于我也设置锚点使用,

[myImage.layer setAnchorPoint:CGPointMake( 0.5, 0.857142857 )];

我正在他的 iPad 4.2 模拟器中运行代码

【问题讨论】:

【参考方案1】:

“为了解决这个问题,我必须在界面生成器中调整 UIImage 的 Autosizing 属性,我启用了所有外部的“条”并禁用了所有内部的“条”,这似乎解决了问题。”

谢谢你,你是生命的救星……时间也是。 :)

【讨论】:

【参考方案2】:

嗯,我已经找到了我的问题。首先,我在 iPad 上支持的唯一方向是横向模式,而不是 iPhone 版本上的纵向模式。通过改变设备的方向,我的图像的位置也会改变。

为了解决这个问题,我必须在界面生成器中调整 UIImage 的 Autosizing 属性,我启用了所有外部“条”并禁用了所有内部“条”,这似乎解决了问题。

【讨论】:

以上是关于CGAffineTransform Rotation() 正在调整 iPad 上的图像大小?的主要内容,如果未能解决你的问题,请参考以下文章

CGAffineTransform

CGAffineTransform 操作顺序不一致

CGAffineTransform 在其他视图上

iOS形变之CGAffineTransform

仿射变换(CGAffineTransform)使用小结

CGAffineTransform介绍