在tableViewCell上运行动画会阻止用户交互?

时间:2017-01-28 06:53:46

标签: ios swift asynchronous tableview

我在动画中制作了tableViewCell的子视图。

UIView.animate(withDuration: TimeInterval(timeLeft), delay: 0, options: UIViewAnimationOptions.curveLinear, animations:  {


    var newFrame = self.viewToScale.frame;

    newFrame = CGRect(x: 0, y: newFrame.origin.y, width: newFrame.size.width + CGFloat(widthLeftToGrow) , height: newFrame.size.height)
    self.viewToScale.frame = newFrame


    }) 

我得到了想要的动画,但与我的手机进行交互变得非常不可靠。当我试图刷卡删除时,我必须发送垃圾邮件,直到我看似在非常具体的时间滑动#34;。

我认为我需要在后台线程上运行它,但更新后台线程上的UI是不正确的不是吗?

如何在不损害用户与单元格交互的能力的情况下在tableViewCell上运行此动画?

1 个答案:

答案 0 :(得分:3)

更改为:options: UIViewAnimationOptions.AllowUserInteraction,

AllowUserInteraction