0
控制的UIImageView动画流程我使用一个UIImageView通过动画巴纽图像来模拟3D。是否可以使用触摸事件来控制动画的流动?例如,如果我模拟一个盒子,我可以用手指向左或向右旋转它吗?如果不是,你能指向另一个方向吗?与触摸事件
控制的UIImageView动画流程我使用一个UIImageView通过动画巴纽图像来模拟3D。是否可以使用触摸事件来控制动画的流动?例如,如果我模拟一个盒子,我可以用手指向左或向右旋转它吗?如果不是,你能指向另一个方向吗?与触摸事件
首先,有两种方法可以做到这一点,这是使用核心动画生成多维数据集,并在刷卡或触摸其旋转硬盘的方式,第二个(最简单的)是添加巴纽序列动画到由UISwipeGestureRecogniser触发的imageView。
首先创建你的手势识别器,通常只是把viewDidLoad中
//Implement Swipe Views
UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeLeft)];
swipeRight.numberOfTouchesRequired = 1;
swipeRight.direction = UISwipeGestureRecognizerDirectionLeft;
[_imageView addGestureRecognizer:swipeRight];
然后实现你的swipeRight方法,您已在@selector(swipeRight)宣布,与动画,你要玩在刷卡......
-(void)swipeRight
{
NSMutableArray *animationArray = [[NSMutableArray alloc] init];
int animationSizeTwo = 30;
for (int i=0; i< animationSize; i++) {
NSString *zeros = @"000";
if (i >= 1000) {
zeros = @"";
}
else if (i >= 100) {
zeros = @"0";
}
else if (i >= 10) {
zeros = @"00";
}
NSString *animationNameTwo = [NSString stringWithFormat:@"(imageName)"];
NSString *imageName = [NSString stringWithFormat:@"%@%@%d.png", animationNameTwo, zeros, i];
[animationArrayTwo addObject:[UIImage imageNamed:imageName]];
}
_imageView.animationImages = animationArray;
_imageView.animationDuration = 1;
_imageView.animationRepeatCount = 1;
_imageView.image = [_imageView.animationImages lastObject];
[_imageView startAnimating];
}
现在,只要你向右滑动动画火灾。您可以复制并粘贴UIGestureRecogniser代码和改变周围的一切方法,所以你可以把它烧成两种方式。当你来实现你的swipeLeft只是改变了动画序列数是这样的:
int animationSizeTwo = 0;
for (int i=30; i> animationSize; i--) {
这将旋转反过来你的动画。
希望这会有所帮助,让我知道你上车! T