我有一个需要滑动视图的要求,但那是在 UITabBarController 中。
有没有人试过这样做?如果我将它设置为 rootViewController,ECSlidingViewController 可以完美运行,但我希望在 UITabBarController 中使用它。
我尝试将 ECSlidingViewController 设置为 UITabBarController 的视图控制器之一,但在第一次滑动后它会一直崩溃,或者有时它会进入无限循环
下面是我的代码
myWorkController = [[TaskWorkViewController alloc] initWithNibName:@"WorkViewController_iPhone" bundle:nil]; // This is the controller where I have my specific logic
myWorkNavController = [[[UINavigationController alloc] initWithRootViewController:myWorkController] autorelease]; // setting the myWorkController to UINavigationController as I need to navigate from this view controller to different view on specific actions
//SlidingviewController 设置 self.slidingViewController = [ECSlidingViewController slipWithTopViewController:myWorkNavController];
self.slidingViewController.topViewController = myWorkNavController;
[myWorkNavController.view addGestureRecognizer:self.slidingViewController.panGesture];
self.slidingViewController.anchorRightPeekAmount = 100.0;
myWorkController.slidingViewController = self.slidingViewController;
UITabBarController *tabBarController = [[UITabBarController alloc] init];
tabBarController.viewControllers = @[ self.slidingViewController, createNavController, currentWorkNavController];
我在myWorkController 中设置underRightViewController
if (self.slidingViewController != nil)
{
UIViewController *underRightViewController = [[[UIViewController alloc] init] autorelease];
// configure under right view controller
underRightViewController.view.layer.borderWidth = 0;
underRightViewController.view.layer.backgroundColor = [UIColor colorWithWhite:0.9 alpha:1.0].CGColor;
underRightViewController.view.layer.borderColor = [UIColor colorWithWhite:0.8 alpha:1.0].CGColor;
underRightViewController.edgesForExtendedLayout = UIRectEdgeTop | UIRectEdgeBottom | UIRectEdgeRight; // don't go under the top view
self.slidingViewController.underRightViewController = underRightViewController;
}
1)第一次滑动完美,但第二次滑动在 ECSlidingViewController 代码中中断 2)当我使用 UINavigationController 时,当我尝试更改 underRightViewController 时,它在 [oldUnderRightViewController removeFromParentViewController] 处失败;ECSlidingViewController 代码
有人可以指导我做错了什么吗,或者如果这可能与 ECSlidingViewController
提前致谢