ECSlidingViewController在第二次滑动时崩溃

问题描述:

我正在使用ECSlidingViewController v2构建一个新项目。我第一次滑动打开左侧的视图,效果很好。但是当我第二次滑动时,出现EXC_BAD_ACCESS崩溃。引用是在控制器中的NSMapTable。ECSlidingViewController在第二次滑动时崩溃

- (void)updateTopViewGestures { 
    BOOL topViewIsAnchored = self.currentTopViewPosition == ECSlidingViewControllerTopViewPositionAnchoredLeft || 
         self.currentTopViewPosition == ECSlidingViewControllerTopViewPositionAnchoredRight; 
    UIView *topView = self.topViewController.view; 

    if (topViewIsAnchored) { 
     ... 
    } else { 
     ... 
---> [self.customAnchoredGesturesViewMap removeAllObjects]; 
    } 
} 

从@uiroshan答案以参考Closing ECSlidingViewController menu

您可以使用下面的代码:

- (IBAction)showSlidingMenu:(id)sender 
{ 
    [self.slidingViewController anchorTopViewToRightAnimated:YES]; 
    if ([self.slidingViewController currentTopViewPosition] == ECSlidingViewControllerTopViewPositionAnchoredRight) 
    { 
     [self.slidingViewController resetTopViewAnimated:YES]; 
    } 
} 

这里,

  • 我动画顶视图控制器到右,所以我正在检查顶视图位置是否为ECSl idingViewControllerTopViewPositionAnchoredRight
  • 要动画顶视图控制器左 ECSlidingViewControllerTopViewPositionAnchoredLeft