ios怎么滑动全屏实现返回功能设置,ios如何滑动全屏实现返回功能

科技资讯 投稿 7400 0 评论

ios怎么滑动全屏实现返回功能设置,ios如何滑动全屏实现返回功能

以下内容主要是针对遇上ios如何滑动全屏实现返回功能等问题,我们该怎么处理呢。下面这篇文章将为你提供一个解决思路,希望能帮你解决到相关问题。

一、iOS滑动全屏实现返回功能介绍

滑动全屏实现返回功能是iOS开发中一种常用的交互方式,它可以让用户在滑动屏幕的同时实现返回上一页的功能,而无需点击返回按钮。

二、iOS滑动全屏实现返回功能实现方法

iOS滑动全屏实现返回功能可以通过UINavigationController的可交互转场功能来实现,具体步骤如下:

1、在需要实现滑动全屏返回功能的UIViewController中,添加UINavigationControllerDelegate和UIViewControllerTransitioningDelegate代理;

2、在UIViewController中添加UIPanGestureRecognizer手势,并实现其回调方法;

3、在UIPanGestureRecognizer手势的回调方法中,根据滑动的距离和速度,调用UINavigationController的popViewControllerAnimated:方法,从而实现滑动全屏返回功能。

三、iOS滑动全屏实现返回功能代码示例


// 实现UINavigationControllerDelegate代理
- (id)navigationController:(UINavigationController *)navigationController animationControllerForOperation:(UINavigationControllerOperation)operation fromViewController:(UIViewController *)fromVC toViewController:(UIViewController *)toVC {
    return [[InteractiveTransition alloc] init];
}

// 实现UIViewControllerTransitioningDelegate代理
- (id)interactionControllerForDismissal:(id)animator {
    return self.interactiveTransition.interacting ? self.interactiveTransition : nil;
}

// 实现UIPanGestureRecognizer手势回调方法
- (void)panGestureAction:(UIPanGestureRecognizer *)pan {
    // 计算滑动的距离
    CGFloat process = [self processWithGesture:pan];
    // 根据滑动距离,调用UINavigationController的popViewControllerAnimated:方法
    if (pan.state == UIGestureRecognizerStateBegan) {
        self.interactiveTransition = [[UIPercentDrivenInteractiveTransition alloc] init];
        [self.navigationController popViewControllerAnimated:YES];
    } else if (pan.state == UIGestureRecognizerStateChanged) {
        [self.interactiveTransition updateInteractiveTransition:process];
    } else if (pan.state == UIGestureRecognizerStateEnded || pan.state == UIGestureRecognizerStateCancelled) {
        if (process > 0.5) {
            [self.interactiveTransition finishInteractiveTransition];
        } else {
            [self.interactiveTransition cancelInteractiveTransition];
        }
        self.interactiveTransition = nil;
    }
}

总结

以上就是为你整理的ios如何滑动全屏实现返回功能全部内容,希望文章能够帮你解决相关问题,更多请关注本站相关栏目的其它相关文章!

编程笔记 » ios怎么滑动全屏实现返回功能设置,ios如何滑动全屏实现返回功能

赞同 (45) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽