我们为按钮上的某些气泡效果制作了此动画,但它阻止了他被点击。如果我们禁用此动画,他将起作用。
我们可以修复它以使其与动画一起使用吗?
CGRect initi=[[initialPositions objectAtIndex:b.tag] CGRectValue];
int r1=arc4random()%4;
int r2=arc4random()%4;
initi.origin.x+=r1;
initi.origin.y+=r2;
[UIView animateWithDuration:0.8 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut animations:^
{
b.frame=initi;
}
completion:^(BOOL completed){ }];
最佳答案
据我所知,该按钮在动画过程中实际上并没有禁用或不可单击。动画开始时,按钮的触摸区域会立即移动到动画结束时按钮所在的位置。这样就感觉在动画过程中该按钮不可单击。
从触摸逻辑的角度来看,按钮只是从A移到B,而A和B之间的动画只是让人眼前一亮。这解释了为什么在两点之间无法触摸。
唯一可行的解决方案是滚动自己的动画例程。如果您想走这条路,Ben Bojko撰写的名为The Holy Grail of iOS Animation Intervals?的帖子应为您指明正确的方向。