interactivePopGestureRecognizer - 弹出或返回当前视图控制器
Posted
技术标签:
【中文标题】interactivePopGestureRecognizer - 弹出或返回当前视图控制器【英文标题】:interactivePopGestureRecognizer - pop or back to curent view controller 【发布时间】:2015-09-09 08:18:32 【问题描述】:如何检测我的 interactivePopGestureRecognizer 是否已完成并将返回(弹出)到前一个视图控制器或 shift 不够。然后当前视图控制器将回到他的正常位置。
我的代码:
if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)])
[self.interactivePopGestureRecognizer addTarget:self action:@selector(defaultGestureAction:)];
- (void)defaultGestureAction:(UIGestureRecognizer *)sender
if (sender.state == UIGestureRecognizerStateBegan || sender.state == UIGestureRecognizerStateChanged)
else
//this code is fired when I touch up
//is there any way to check this action (pop or stay)?
【问题讨论】:
【参考方案1】:我认为没有任何可以使用的标志表明该手势是积极的还是消极的。
您可以通过分析平移点和速度自行尝试:
- (void)defaultGestureAction:(UIScreenEdgePanGestureRecognizer *)sender
if (sender.state == UIGestureRecognizerStateEnded)
CGPoint translatedPoint = [(UIScreenEdgePanGestureRecognizer*) sender translationInView:[sender view]];
if(translatedPoint.x > self.view.bounds.size.width * 0.5f || [sender velocityInView:self.view].x > 500.0f)
//did trigger translation
else
//did cancel translation
【讨论】:
以上是关于interactivePopGestureRecognizer - 弹出或返回当前视图控制器的主要内容,如果未能解决你的问题,请参考以下文章