如何旋转UIImageView?

时间:2014-02-12 23:59:25

标签: cocoa-touch uiimageview

我是Xcode的新手,我想知道如何在触摸时旋转uiimage,这就是我目前所拥有的:

@implementation secondViewController

    int degrees;
    UIImageView *gliderImageView;
    bool continueSpinning;

    -(void)startSpinning {
        degrees = 0;
        continueSpinning = true;
        [self continueSpinning];
    }

    -(void)continueSpinning {
        degrees = (degrees + 1) %360;

        CGAffineTransform rotate = CGAffineTransformMakeRotation( degrees / 180.0 * 3.14);
        [gliderImageView setTransform:rotate];

        if(!continueSpinning) return;
        else [self performSelector:@selector(continueSpinning) withObject:nil afterDelay:0.1f];
    }

    -(void)stopSpinning {
        continueSpinning = false;    
    }

所以有人都知道

  1. 如何将按钮链接到图像
  2. 如何使用按钮设置布尔值
  3. 如果此代码首先起作用?

1 个答案:

答案 0 :(得分:0)

您可以找到旋转UIImage here的示例。

所以就在你的.h中写下这个:

(在@interface中)

IBOutlet UIImage *myImage;
IBOutlet UIButton *myButton;

(在@interface结束括号后)

@property (nonatomic, retain) IBOutlet UIImage *myImage;
@property (nonatomic, retain) IBOutlet UIButton *myButton
-(IBAction) spinIt:(id)sender;

然后在你的.m写道: 在@implementation下:

@synthesize myImage, myButton;

然后在viewDidLoad的末尾下面写这样的东西:

-(IBAction)spinIt:(id)sender {
myImage.image = image;

[self addSubview:imageView];

CGAffineTransform rotate = CGAffineTransformMakeRotation( 1.0 / 20.0 * M_PI );

[imageView setTransform:rotate];
}

以上代码来自here

之后在Storyboard中为视图添加一个图像和一个按钮,并通过控件从按钮拖动到响应者并单击spinIt方法并通过控制从最右侧的插座名称拖动来设置参考。小箭头图标下的连接选项卡与各自的连接。

以上代码旋转90度,因此您可能需要更改它以满足您的需要。此外,这是一个重复的问题,因此将来请在发布前进行搜索。祝好运!

编辑 - 如果您希望图像在按下按钮时旋转,我建议在旋转中以不同的间隔制作图像阵列,并像停止动画一样播放图像。有关这方面的说明可以在[此处] 3找到。