我必须有一个带有9个选项卡的tabBar,所以我添加了一个带有9个按钮的Srollview(MHScrollViewController)而不是tabBar。单击每个按钮后,将viewController作为子视图添加到Srollview。
在AppDelegate中,具有以下代码:
MHScrollViewController *scrollViewController = [[MHScrollViewController alloc] initWithNibName:@"MHScrollView" bundle:nil];
scrollViewController.managedObjectContext = [self managedObjectContext];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:scrollViewController];
self.window.rootViewController = self.navigationController;
现在说一个选项卡(按钮),我已经将MHBikesViewController添加到MHScrollViewController作为subView。在MHScrollViewController中,我这样做
bikesViewController = [[MHBikesViewController alloc] initWithNibName:@"MHBikesView" bundle:nil];
bikesViewController.managedObjectContext = self.managedObjectContext;
bikesViewController.view.frame = baseViewiPhone.frame;
CGRect theFrame = bikesViewController.view.frame;
theFrame.origin.y = 0;
bikesViewController.view.frame = theFrame;
bikesViewController.navigationController = self.navigationController;
[baseViewiPhone addSubview:bikesViewController.view];
现在,我在MHBikesViewController页面上有两个按钮。单击后,我想在MHBikesViewController上推送一个新的viewcontroller。我可以推送,但是scrollView被隐藏在该viewcontroller下。
最佳答案
UINavigationController仍将使用新推入的控制器覆盖其所有内容,因此您需要使用navigationcontroller外部的按钮进行滚动视图。
关于ios - 不同 View Controller 通用的UIScrollView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17089703/