相关疑难解决方法(0)

取消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
查看次数

如何隐藏导航栏而不会失去滑回功能

我有一个UITableView,它有一个导航栏(来自UINavigationViewController),它可以通过用手指向后滑动返回.

我试图隐藏导航栏但保持滑回功能,代码:

- (void)viewWillAppear:(BOOL)animated {
    [[self navigationController] setNavigationBarHidden:YES animated:YES];
}
Run Code Online (Sandbox Code Playgroud)

这成功地隐藏了导航栏,但是,我也无法再滑回到最后一个屏幕.

有没有办法隐藏导航栏但保持滑回功能?

xcode objective-c ios

24
推荐指数
3
解决办法
1万
查看次数

弹出视图控制器使用屏幕边缘平移手势识别器不遵循拇指

一旦我添加了自定义栏导航栏按钮项,我就失去了使用默认功能返回的能力.我希望能够使用"从边缘滑动"返回.

我添加了Edge Pan Gesture Recogniser并将其连接到@IBAction,但是一旦识别出平移手势,解雇动作就会完全发生.

而不是慢慢地跟随我的拇指(如在其他应用程序中看到的),当前视图移出预定义的动画.

如何使用Edge Pan Gesture Recogniser按照我的拇指制作动画?

@IBAction func edgeSwipe(sender: AnyObject) {
    navigationController?.popViewControllerAnimated(true)
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

cocoa-touch uinavigationcontroller uigesturerecognizer swift

7
推荐指数
1
解决办法
1559
查看次数