我有一个 UITapGestureRecognizer
设置,它执行 0.8s
UIView
动画。我想要做的是允许用户在 0.8s
期间中断。我将处理事物的动画方面(即使事物从其当前位置开始动画),但当前的问题是在这些 0.8s
期间的任何进一步点击都不会调用 @selector
来自识别器。在通过 @selector
的第一次运行完成之前,任何后续点击都会被阻止。
确认一下,我需要的是一种允许调用来自同一 UITapGestureRecognizer
的同一 @selector
的方法,即使它没有 返回
。那时我可以覆盖动画,告诉它从当前位置开始,并让它完成,即使用户向识别器发送垃圾邮件。
有没有办法做到这一点?我考虑过线程,但我的印象是我不应该在后台线程上进行 UI 更新,所以当有可能是首选方式时,我犹豫是否尝试。
好吧,如果你想在动画期间允许用户交互,添加 UIViewAnimationOptionAllowUserInteraction 选项,这里是示例,
[UIView animateWithDuration:0.8
delay:0.0
options:UIViewAnimationOptionAllowUserInteraction
animations:^{
// your animations
} completion:^(BOOL finished) {
// completion
}];
关于ios - UITapGestureRecognizer 的 Action 在进行中时无法调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23512602/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |