首页 文章

iPhone:在滑动手势中使用时,使用块动画方法的翻转动画不流畅

提问于
浏览
2

当用户在单元格中滑动时,我试图在表格的单元格上显示某些子视图 . 我正在使用iOS提供的块动画 .

我正在使用以下代码在UITableViewController的ViewDidLoad方法中注册滑动手势 .

UISwipeGestureRecognizer *showExtrasSwipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(cellSwipe:)];
        showExtrasSwipe.direction = UISwipeGestureRecognizerDirectionLeft;
        [self.tableView addGestureRecognizer:showExtrasSwipe];

当用户在单元格中滑动时,我使用以下代码启动翻转动画 .

-(void)cellSwipe:(UISwipeGestureRecognizer *)gesture
{

 NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"ActionsCell" owner:self options:nil];
   ActionsCell* actionView = (ActionsCell *)[nib objectAtIndex:0];   
[UIView transitionWithView:swipedCell duration:0.5
                       options:UIViewAnimationOptionTransitionFlipFromLeft
                    animations:^ { [swipedCell addSubview:actionView]; }
                    completion:nil];

}

通过以上实现,我观察到翻转动画持续时间不是恒定的,有时动画不是平滑的 . 我观察到,如果我快速扫过细胞,那么动画就会很平滑 . 但是,如果我慢慢地滑动一点,即花费更多时间进行滑动,则翻转动画不平滑,有时动画根本不可见 .

可能是因为我将动画的持续时间设置为0.5秒,慢速滑动所花费的一些时间会减少动画的可用持续时间吗?有没有办法检查滑动已结束?我使用的是iOS 4.3

感谢您的帮助 !!

1 回答

  • 1

    我们最终解决了这个问题,实现了从0.5s到0.8s的过渡时间略有增加的解决方法 . 虽然可能是正确的解决方案,但还不确定 .

相关问题