我正在使用库NMBottomTabBarController。 (对于参考https://github.com/priankaliz/NMBottomTabBarController)
在AppDelegate.h中,我已经为 tabBarController 声明了属性。
@property (nonatomic, strong) NMBottomTabBarController *customTabBarController;
在 didFinishLaunchingWithOptions 下的AppDelegate.m中
customTabBarController = (NMBottomTabBarController *)self.window.rootViewController;
customTabBarController.controllers = [NSArray arrayWithObjects:viewController1,viewController2,viewController3,viewController4 nil];
customTabBarController.delegate = self; HomeViewController *controller = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
[self.window setRootViewController:controller];
我在HomeVC中tableView
。单击表下的行时,我希望将customTabBarController设置为rootViewController
。为此,我写了
- (void)tableView:(UITableView *)tableView1 didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
AppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
[appDelegate.customTabBarController selectTabAtIndex:indexPath.row];
[appDelegate.window setRootViewController:appDelegate.customTabBarController.tabBarController];
}
此代码无效。我没有得到tabBarCotroller屏幕。 什么是正确的方法?
答案 0 :(得分:0)
我认为你的问题在于这一行
[appDelegate.window setRootViewController:appDelegate.customTabBarController.tabBarController];
尝试改变它:
[appDelegate.window setRootViewController:appDelegate.customTabBarController];