[英]UILabel Animations and Gestures
我正在尝试在我正在编写的应用程序中实现效果,也许您可以提供帮助。
视图层次结构在这一点上相当复杂,所以为了简单起见,我只是说我有一个UILabel,它的Alpha值设置为0.目前我正在使用一个UILongPressGestureRecognizer,它在几秒钟之后,调用一个更新文本的方法UILabel并执行一个UIView动画块以很好地显示它(在1秒的过程中将Alpha设置为1 - 将其淡入)。
这个Block在新更新的标签中消失,然后在它的完成块中将其淡化一段时间。
这没关系,但我真正想要的是在长按(比如说3秒)后让标签淡入(通过UIView动画或其他)。 然后在按下仍处于活动状态时保持屏幕,然后在触摸提起后淡出一秒钟。 我怎样才能达到这个效果?
我应该忘记手势识别器并移动到UIView动画块并使各种触摸触摸状态变为极点吗?
感谢阅读,问候,
约翰
长按识别器可以工作,您只需要检查状态以了解该做什么。 首次识别手势时,启动淡入。手势完成后,启动淡出,但使用允许您设置开始延迟的方法。
- (void)handleLongPress:(UILongPressGestureRecognizer*)sender
{
if (sender.state == UIGestureRecognizerStateEnded) {
// fade out, delayed
}
else if (sender.state == UIGestureRecognizerStateBegan) {
// fade in
}
}
每个UIGestureRecognizer都有状态。 处理长按时,只需检查状态。
- (void)handleLongPress:(UILongPressGestureRecognizer*)longPress
{
if(longPress.state == UIGestureRecognizerStateEnded){
//do what you want
NSLog(@"%@", @"end");
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.