ios - SlideMenu 未检测到 iOS 11 上关闭菜单的触摸。为什么?

标签 ios

我正在使用 Pod iOS-Slide-Menu在我的个人项目之一中进行 repo 。

如果我在 iOS < 11 上运行我的项目,一切都会按预期工作:当侧面菜单(蓝色 View Controller )触摸其外部时,即绿色部分。自动关闭

enter image description here

但在运行 iOS 11 的设备上运行时,点击外部时菜单不会关闭。

另一个奇怪的情况是,这只发生在最近编译的版本(当前使用 Xcode 9.0),在 iOS11 设备上运行 App Store 版本也可以正常工作。

所以我的问题是:

  • 为什么会发生这种情况?
  • 如何在不更换整个库的情况下避免这种情况发生?

我创建了一个SAMPLE PROJECT在 github 中重现问题。

最佳答案

在您的 SlideNavigationController.m 文件中,转到 viewWillLayoutSubviews 方法并删除或注释下面的行

 [self enableTapGestureToCloseMenu:NO];

这是因为 viewWillLayoutSubviews 方法最初是在 ios 11 中被调用的!

因此,从 viewWillLayoutSubviews 中,enableTapGestureToCloseMenu 被调用,并且它正在从右侧菜单中删除手势识别器!

关于ios - SlideMenu 未检测到 iOS 11 上关闭菜单的触摸。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46710227/

相关文章:

ios - Objective-C 三元运算符产生 @"null"或 bool 值

ios - 实现 searchBarSearchButtonClicked

ios - 在模态视图上显示标签栏

iphone - 如何以编程方式布局在不同 "modes"之间切换的应用程序?

ios - 段错误 11 仅适用于 xcode 10 swift 3

iphone - 我有一个在后台播放音频的 iPad 应用程序,但应用程序图标没有出现在 ipod 控件中

ios - 检查字符串是否包含数字

向下滚动时 iPhone Storyboard 自定义单元格消失

ios - 在自定义 UIView 中设置 IBOutlet 标签的文本

ios - 更新字体时更新 webview 页码