小编cob*_*ber的帖子

取消iOS 7后滑动手势后,导航堆栈变得无法使用

我遇到了一个问题,我的导航控制器在启动然后取消新的iOS 7后滑动手势后变得无法使用.

一些相关信息:

  • 我的应用程序有一个包含各种活动页面的主页.
  • 主页隐藏viewWillAppear中的导航栏
  • 主页取消隐藏viewWillDisappear中的导航栏

    -(void) viewWillAppear:(BOOL)animated
    {
        [super viewWillAppear:animated];
    
        // Let's hide the navbar when we show the home view
        [self.navigationController setNavigationBarHidden:YES];
        …
    }
    
    -(void) viewDidDisappear:(BOOL)animated 
    {
        [super viewDidDisappear:animated];
    
        // Let's hide the navbar when we show the home view
        [self.navigationController setNavigationBarHidden:NO];
    }
    
    Run Code Online (Sandbox Code Playgroud)

当用户点击主页上的活动图标时,活动的视图控制器被推送到堆栈上.

如果用户开始在iOS中使用新的后滑动手势,但随后停止手势(即决定不返回),一切看起来都不错.但是,如果用户导致另一个视图控制器被推到导航堆栈上,那么唠叨条就会变得无法使用,并且用户无法从当前视图控制器导航回来.

笔记

  • 它只在我显示/隐藏导航栏时发生
  • 我仍然可以慢慢地执行后退手势,只要我不取消手势,一切都会正常工作
  • 导航栏似乎可以工作,但点击后退按钮不会弹出视图控制器.

uinavigationbar uinavigationcontroller ios ios7

26
推荐指数
1
解决办法
5488
查看次数