是否可以从XCode中在Interface Builder中旋转UIImageView?就像我可以在Photoshop中一样,我可以在那里缩放和旋转图像。
我知道代码是可行的,但有没有办法在界面构建器中执行此操作?
答案 0 :(得分:27)
答案 1 :(得分:6)
您无法在当前版本的Xcode中执行此操作。您可以通过http://radar.apple.com
向Apple提交功能请求但是如果你想这样做,你需要编写一些代码
#define RADIANS(degrees) ((degrees * M_PI) / 180.0)
theView.transform = CGAffineTransformRotate(theView.transform, radians)
答案 2 :(得分:6)
是的你可以用一点技巧。
在你的代码中声明一个像这样的新UIView类别
@interface UIView (IBRotateView)
@property (nonatomic, assign) CGFloat rotation;
@end
@implementation UIView (IBRotateView)
@dynamic rotation;
- (void)setRotation:(CGFloat)deg
{
CGFloat rad = M_PI * deg / 180.0;
CGAffineTransform rot = CGAffineTransformMakeRotation(rad);
[self setTransform:rot];
}
@end
现在你可以使用运行时参数" rotation"在您喜欢的任何UIView上直接在这样的界面构建器上。
显然,界面构建器不会在其内部渲染中旋转视图,因为它只会影响运行时渲染。
答案 3 :(得分:3)
在接口构建器中不可能,但代码非常简单:
#define RADIANS(degrees) ((degrees * M_PI) / 180.0)
CGAffineTransform rotateTransform = CGAffineTransformRotate(CGAffineTransformIdentity,
RADIANS(120.0));
imageView.transform = rotateTransform;