我已经为我的项目实现了ECSlidingViewController框架。这是可行的。我可以用左边的菜单在视图控制器之间切换。
但是现在我想通过单击UIButton来设置当前视图/顶部视图
NSString *identifier = [NSString stringWithFormat:@"%@", @"newView"];
UIViewController *newTopViewController = [self.storyboard instantiateViewControllerWithIdentifier:identifier];
[self.slidingViewController anchorTopViewOffScreenTo:ECLeft animations:nil onComplete:^{
CGRect frame = self.slidingViewController.topViewController.view.frame;
self.slidingViewController.topViewController = newTopViewController;
self.slidingViewController.topViewController.view.frame = frame;
}];当我单击此按钮时,newView-ViewController位于顶部,但左侧菜单也是可见的。我尝试了如下方法来隐藏菜单:
[self.slidingViewController anchorTopViewTo:ECRight];
...
self.slidingViewController.underRightWidthLayout = ECVariableRevealWidth;
...
[self.slidingViewController anchorTopViewTo:ECLeft];
...
[self.slidingViewController anchorTopViewOffScreenTo:ECLeft];
...
self.slidingViewController.underLeftWidthLayout = ECFullWidth;
...
[self.slidingViewController resetTopView];我怎么能隐藏左边的菜单?
对不起我的英语错误,我来自德国。
发布于 2013-08-20 10:35:25
不要在整个过程中继续使用self.slidingViewController。每次都会对其进行评估,因此当您更改滑动控制器中的视图控制器时,您可以中断链接。因此,缓存滑动控制器引用并重用它:
ECSlidingViewController *slidingViewController = self.slidingViewController;
[slidingViewController ...];
[slidingViewController ...];发布于 2013-11-16 01:44:53
在resetTopView块末尾调用onComplete应该隐藏菜单。
发布于 2015-02-17 06:50:29
显示/隐藏SlideViewController
[viewController.slidingViewController anchorTopViewToRightAnimated:YES];
if ([viewController.slidingViewController currentTopViewPosition] == ECSlidingViewControllerTopViewPositionAnchoredRight) {
[viewController.slidingViewController resetTopViewAnimated:YES];
}https://stackoverflow.com/questions/18332419
复制相似问题