我需要在加载视图时按接口构建器创建的UIImageView以给定角度旋转.
- (void)viewDidLoad
{
[super viewDidLoad];
image.transform = CGAffineTransformRotate(image.transform, REF_INIT_OFFSET*M_PI/180);
}
Run Code Online (Sandbox Code Playgroud)
这会旋转图像,但后者完全扭曲和拉伸.如果REF_INIT_OFFSET是90的倍数,它可以正常工作!
这是图片的样子(注意指针指向"0")

以下是它的实际外观:

看起来图像被拉伸到错误的方向.
你知道什么是错的吗?
谢谢,
不确定它对你有帮助,但在[UIImage setFrame:]之后我遇到了同样的问题,如果转换了UIImage,决定使用setBounds而不是setFrame
在评论中解决讨论中的问题:
如果autoresizesSubviews属性为YES,则在shouldAutorotateToInterfaceOrientation中的viewDidLoad之后隐式调用方法setFrame
- (void)viewDidLoad {
[super viewDidLoad];
self.view.autoresizesSubviews=NO;
image.transform = CGAffineTransformRotate(image.transform, 50*M_PI/180);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3970 次 |
| 最近记录: |