如何添加像iPhone应用程序的删除效果?

时间:2013-01-09 07:21:32

标签: ipad animation

我必须在我的ipad应用程序中提供删除缩略图动画,就像iphone / ipad应用程序删除效果一样。 任何正文帮助我,请附上样本照片enter image description here

如果您需要更多详细信息,请在评论中提及

2 个答案:

答案 0 :(得分:7)

我使用CGAffineTransformMakeRotation完成了此操作。不知道还有其他更好的方法。但我所做的是我的逻辑,你可以复制它,你只需要在该视图的左上方添加一个删除按钮。在下面的代码中,我只是动画缩略图或任何视图,就像iPad在其主屏幕上所做的那样。有一件事,你需要全局声明int方向。每次调用此方法时,都会设置direction = 1;

    -(void)shakeToDelete:(UIView *)shakeMe
{

    [UIView animateWithDuration:0.1 animations:^
     {
         shakeMe.transform = CGAffineTransformMakeRotation(0.05 * direction);
     }
                     completion:^(BOOL finished)
     {

         direction = direction * -1;
         [self shakeToDelete:shakeMe];
     }];
 }

///编辑 我尝试了这种方式,并在照片中附带的示例屏幕中使用它 enter image description here

答案 1 :(得分:0)

你最好使用自动反转和循环动画,因为反复创建动画会实现手机内存。

使用此代码,只保留一个动画。

view.transform = CGAffineTransformMakeRotation(-kDeleteAnimationAmplitude);

[UIView animateWithDuration:0.1 delay:0 options:UIViewAnimationOptionRepeat|UIViewAnimationOptionAutoreverse animations:^{
    view.transform = CGAffineTransformMakeRotation(kDeleteAnimationAmplitude);
} completion:nil];

然后,如果你想停止动画,只需打电话:

[view.layer removeAllAnimations];