我正在使用 REFrostedViewController 在我的项目中显示侧边栏菜单的库,其中有一个表格 View 来显示内容。
选择表格单元格后,我想显示一个新页面。我想使用 UINavigationController 在顶部推送一个新 View 。但似乎 REFrostedViewController 上下文中没有 UINavigationController 堆栈。
如何实现 UINavigationController 行为以使用 REFrostedViewController?
最佳答案
在我的设置中,FrostedViewController 从一开始就是 rootViewController。它的 contentViewController 是我的 NavigationViewController。在 AppDelegate 中,我执行了以下操作:
TMSlideMenuViewController *menuController = [[[[self window] rootViewController] storyboard] instantiateViewControllerWithIdentifier:@"slideMenuViewController"];
REFrostedViewController *frostedViewController = [[REFrostedViewController alloc] initWithContentViewController:self.window.rootViewController menuViewController:menuController];
self.window.rootViewController = frostedViewController;
在 TMSlideMenuViewController、didSelectRowAtIndexPath 方法中你可以这样做:
TMNavigationController* navigationController = [self.storyboard instantiateViewControllerWithIdentifier:@"tmNavigationController"];
switch (indexPath.item) {
case 0:
// Favorites
frostedViewController.contentViewController = navigationController;
[navigationController pushViewController:sourcesViewController animated:YES];
break;
为了推送 ViewController,您应该将 contentViewController 设置为 NavigationController。对我来说,它就是这样工作的。
关于ios - 如何使 REFrostedViewController 与 UINavigationController 一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22508614/