在iOS7中,苹果增加了一个新的默认导航行为.您可以从屏幕的左边缘滑动以返回导航堆栈.但在我的应用程序中,这一行为与我的自定义左菜单冲突.那么,是否可以在UINavigationController中禁用这一新手势呢?

推荐答案

我找到了一个解决方案:

Objective-C:

if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
    self.navigationController.interactivePopGestureRecognizer.enabled = NO;
}

Swift 3+:
self.navigationController?.interactivePopGestureRecognizer?.isEnabled = false

Ios相关问答推荐

如何使用UICollectionView Compositionallayout在UIKit中正确渲染远程图像

SWIFT设备方向更新不正确

NSHashTable要求任何MyCustomProtocolAnyObject都是类类型

在flutter中使用flatter_screenutil这样的软件包的目的是什么?

RFID scanner 的蓝牙服务 UUID?

保存和读取登录到 keys 串不工作 IOS swift

如何制作支持不同语言的iOS应用

iOS设备网页自动化中,在向字段发送文本后未启用按钮

CGPath intersection(_:using:) 和朋友(iOS 16 中的新功能)坏了?

Swift 图表:.chartYScale 似乎只适用于 100 的增量?

在 tableview 中下载图像缩略图时如何提高滚动性能

如何忽略touch 事件并将它们传递给另一个子视图的 UIControl 对象?

如何在 SwiftUI 中检测 TextField 的实时变化?

在主线程上发布 NSNotification

无法将NSTaggedPointerString类型的值转换为NSNumber

为信用卡输入格式化 UITextField,例如 (xxxx xxxx xxxx xxxx)

Xcode / iOS模拟器:手动触发重大位置更改

使用 Swift 在一个 ViewController 中强制横向模式

使用 Xcode 的 All Exceptions 断点时忽略某些异常

为给定的 UIColor 获取更亮和更暗的 colored颜色 变化