iOS UIViewController pushViewController问题

时间:2016-04-03 08:24:33

标签: uiviewcontroller uinavigationcontroller

我是这样的子类UINavigationController:

@implementation BaseNavigationController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    self.view.backgroundColor = [UIColor colorWithRed:0.95 green:0.95 blue:0.95 alpha:1];
}

- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated {
    if (self.viewControllers.count) {
        viewController.hidesBottomBarWhenPushed = YES;
    }
    [super pushViewController:viewController animated:animated];
}

而且我也是这样的UIViewController的子类:

@implementation BaseViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.tabBarController.tabBar.translucent = NO;
    self.navigationController.navigationBar.translucent = NO;
    self.view.backgroundColor = [UIColor colorWithRed:0.95 green:0.95 blue:0.95 alpha:1];
}

- (UIStatusBarStyle)preferredStatusBarStyle {
    return UIStatusBarStyleDefault;
}

我的所有视图控制器都继承了baseViewController,我的所有导航控制器都继承了baseNavigationController。

UITabBarViewController - > BaseNavigationController - > BaseViewController

问题有时是我的应用程序从后台返回并点击一个单元格(UITableView或UICollectionView),pushViewController不起作用,应用程序卡住。或者有时只有导航栏被推送到下一个视图控制器,显示下一个视图控制器& #39;标题和应用程序也会卡住。调用下一个视图控制器的viewDidLoad方法。

我已经担心了一个星期,我不知道为什么会这样,所以请帮我解决这个奇怪的问题。

有时候不是100%得到这个问题。谢谢。

0 个答案:

没有答案