iPhone - 在UIButton UIView动画 - 按钮不可点击部分持续时间
问题描述:
我想要有一个按钮在屏幕上移动,仍然可以点击。我正确地在屏幕上移动,但奇怪的是,我不能点击按钮,直到动画的最后一秒。该按钮仍在移动,但在一定的阈值后,我可以点击它。任何想法发生了什么?任何其他方式的想法,我可以做我想做的事情?谢谢你的帮助。iPhone - 在UIButton UIView动画 - 按钮不可点击部分持续时间
答
没有任何详细信息,我只能假设问题的某些方面。我的假设是,你已经创建了一个动态的UIButton并将其设置为视图,当它不在屏幕上移动时,该视图是完全可点击的。但是,当您将该按钮设置为UIView的动画时,该按钮不再可点击。从我的理解来看,这可能是而不是。
答
我相信当动画开始时,按钮会移动到最终的动画位置,但是在动画完成之前它不会显示在那里。在移动时,您只能看到它的图像投影,而不是真正的按钮。我想如果你可以在动画过程中定期记录按钮的帧值,你可以看到这个(嗯,我必须在我的颜色选择器中尝试)。
也许你可以在许多动画中一次移动按钮而不是一次长动作?
编辑:我试图在我正在工作的程序中记录了动画对象的原点。它在整个动画中具有最终原点值:
2010-05-04 20:41:08.914 beginAnimations: origin=175 197
2010-05-04 20:41:08.915 commitAnimations: origin= 79 333
2010-05-04 20:41:08.964 -[ColorPickerVC showSlidingColorOrigin:] 79 333
2010-05-04 20:41:09.064 -[ColorPickerVC showSlidingColorOrigin:] 79 333
2010-05-04 20:41:09.164 -[ColorPickerVC showSlidingColorOrigin:] 79 333
2010-05-04 20:41:09.264 -[ColorPickerVC showSlidingColorOrigin:] 79 333
2010-05-04 20:41:09.364 -[ColorPickerVC showSlidingColorOrigin:] 79 333
2010-05-04 20:41:09.464 -[ColorPickerVC showSlidingColorOrigin:] 79 333
2010-05-04 20:41:09.577 annimationDone: origin= 79 333
我进入Interface Builder并将四舍五入的矩形按钮拖到视图上。在我的视图控制器类中,我有一个在IB中正确链接的IBOutlet UIButton。我的动画按钮的代码是一组简单的[UIView beginAnimation ...]行。我将持续时间设置为5秒。那么要做的“更改”是按钮中心正在设置在屏幕上的其他地方。如果我将动画注释掉,该按钮可点击,并且处于静止状态,并且与touchUpInside链接的功能有效。如果动画结束,它不会变成蓝色,或者直到它停止时调用该函数。 – Robert 2010-05-04 23:15:27