美文网首页
iOS如何优雅的监听滑动返回结果

iOS如何优雅的监听滑动返回结果

作者: 桥下醉翁 | 来源:发表于2020-09-25 15:59 被阅读0次

UINavigationController说明

在iOS中的UINavigationController中,存在两种返回操作

  • 点击返回按钮实现页面返回
  • 侧边栏滑动返回

需求说明

在项目运营中,会频繁遇到打开WebView的Controller操作。如果每次都创建新的Controller,并且创建WebView,会比较占用内存。
所以现在想到,用个数组保存2、3个可复用的Controller。

操作描述

以上都是废话,可以直接看下面的内容。
在UINavigationController中的滑动返回,可能用户滑动一半,又回到停留界面,这个操作你应该会懂的。

失败的解决方案

第一个想法是监听popViewControllerAnimated:(BOOL)animated方法。但是用了动画效果后,这个方法针对上面说的操作就无效了。

最终的解决方案

在需要复用的Controller中,监听viewDidDisappear:(BOOL)animated方法

- (void)viewDidDisappear:(BOOL)animated {
    [super viewDidDisappear:animated];
    if (self.navigationController == nil) {
        [APPUtils addWebViewController:self];
    }
    NSLog(@"%@: %ld, %@", self, viewCount, self.navigationController);
}

如此就可以监听,用户的的确确是滑动返回了。在此基础上,我们就可以做更多的监听操作了。

至于某歌/某度上搜索到的手势监听、willMoveToParentViewController:(UIViewController *)parent,真的不是特别优雅。

WKWebView如何优雅的清除历史记录

如果对您有帮助,点个在赞再走吧

相关文章

  • iOS如何优雅的监听滑动返回结果

    UINavigationController说明 在iOS中的UINavigationController中,存在...

  • iOS滑动返回大全[Xcode10.3下]

    1.滑动返回如何失效 滑动返回如何再次生效 如何禁止滑动返回 全屏的滑动返回 页面消失会调用的方法. 应该是 po...

  • 全屏滑动返回

    1.导航控制器自带了滑动返回(iOS7) 2.但是设置界面没有滑动返回功能 3.恢复滑动返回 分析:为什么滑动返回...

  • iOS 手势返回

    iOS 手势返回 BBGestureBack iOS 全屏手势返回 滑动返回 pop 动画效果 这种手势主流App...

  • iOS 全屏返回

    iOS 全屏返回 BBGestureBack iOS 全屏手势返回 滑动返回 pop 动画效果 这种手势主流App...

  • iOS监听控制器滑动返回的方法

    当我们用手势滑动返回是需要监听他的返回事件,在UIViewController (UIContainerViewC...

  • iOS 右滑返回

    iOS 右滑返回 BBGestureBack iOS 全屏手势返回 滑动返回 pop 动画效果 这种手势主流App...

  • iOS 侧滑返回

    iOS 侧滑返回 BBGestureBack iOS 全屏手势返回 滑动返回 pop 动画效果 这种手势主流App...

  • iOS 侧滑返回详解

    iOS 侧滑返回详解 BBGestureBack iOS 全屏手势返回 滑动返回 pop 动画效果 这种手势主流A...

  • iOS 侧滑返回详解

    iOS 侧滑返回 BBGestureBack iOS 全屏手势返回 滑动返回 pop 动画效果 这种手势主流App...

网友评论

      本文标题:iOS如何优雅的监听滑动返回结果

      本文链接:https://www.haomeiwen.com/subject/qiyfuktx.html