美文网首页
JZNavigationExtension+侧滑一半导行栏变白问

JZNavigationExtension+侧滑一半导行栏变白问

作者: 趁惑哒洁 | 来源:发表于2019-05-05 14:45 被阅读0次
id _previousVisibleViewController = [objc_getAssociatedObject(self, _cmd) weakObjectValue];
if (!_previousVisibleViewController) {
    _previousVisibleViewController = [self.topViewController.transitionCoordinator viewControllerForKey:UITransitionContextFromViewControllerKey];
}

// 测试这个问题出现在这部 如果滑动到一半返回 topViewController. transitionCoordinator 为nil 此时应该把_previousVisibleViewController 指向topViewController 因为后面用到这个_previousVisibleViewController 而这个controller为nil的时候就会出现空白了

    if (!_previousVisibleViewController) {
        _previousVisibleViewController = self.topViewController;
    }
    self.jz_previousVisibleViewController = _previousVisibleViewController;

打开相机崩溃--UINavigationController+JZExtension.m 57行代码修改

    - (void)jz_viewDidLoad {
    /*
     NSAssert(!self.delegate, @"Set delegate should be invoked when viewDidLoad");
     self.delegate = nil;
     [self.interactivePopGestureRecognizer setValue:@NO forKey:@"canPanVertically"];
     self.interactivePopGestureRecognizer.delegate = self.jz_navigationDelegate;
     [self jz_viewDidLoad];
     */
    self.delegate = self.delegate;
    [self.interactivePopGestureRecognizer setValue:@NO forKey:@"canPanVertically"];
    self.interactivePopGestureRecognizer.delegate = self.jz_navigationDelegate;
    [self jz_viewDidLoad];
}

相关文章

网友评论

      本文标题:JZNavigationExtension+侧滑一半导行栏变白问

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