iPhone:管理视图动画到异步事件
Posted
技术标签:
【中文标题】iPhone:管理视图动画到异步事件【英文标题】:iPhone: Managing animations of views to asynchronous events 【发布时间】:2011-03-01 22:35:48 【问题描述】:我有一个 UIView,我正在向它添加两个子视图之一。如果事件 1 进入,则显示子视图 1。如果事件 2 进入,则显示子视图 2。
因此,以下工作(伪代码):
on_event1: add subview 1 and remove subview 2
on_event2: add subview 2 and remove subview 1
现在,我想添加一个过渡动画,通过更改 alpha 在两个视图之间交叉淡入淡出。
我的问题是,如果事件 1 的动画正在进行并且事件 2 到达,我无法取消当前动画并开始下一个动画。我想做的是停止当前动画并立即开始下一个。
我该如何做或最接近的替代方法?
【问题讨论】:
【参考方案1】:这个问题解决了中途停止动画的常见方法:
Cancel a UIView animation?
【讨论】:
它谈到了 setAnimationBeginsFromCurrentState。使用积木时可以这样做吗?【参考方案2】:[UIView transitionFromView:subview1 toView:subview2 duration:0.75 options:UIViewAnimationOptionBeginsFromCurrentState completion:^(BOOL finished) ];
【讨论】:
以上是关于iPhone:管理视图动画到异步事件的主要内容,如果未能解决你的问题,请参考以下文章