我是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;
}
所以有人都知道
答案 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找到。