首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS11 UIBarButtonItem不工作

iOS11 UIBarButtonItem不工作
EN

Stack Overflow用户
提问于 2017-09-18 11:52:33
回答 3查看 4.1K关注 0票数 4

我有一个在商店里的应用程序。我正试图为iOS11发布做好准备,但遇到了一个恼人的问题。

应用程序中的UIBarButtonItem都没有正常工作。leftBarButtonItems是可点击的,但单击区域略位于项目的右侧。rightBarButtonItems根本不起作用!我已经添加了项目,通过故事板和代码,但他们似乎没有工作。请帮帮我!

以下是一个例子:-

代码语言:javascript
复制
navigationItem.rightBarButtonItem = UIBarButtonItem(title: NSLocalizedString("Save", comment: "save button title"), style: UIBarButtonItemStyle.plain, target: self, action: #selector(VC.rightBarButtonClicked(_:)))
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-09-22 08:34:51

也有同样的问题。这归结为我们的项目中一个名为"UIButton+MinimumTouchArea.swift“的文件在UIButton+MinimumTouchArea.swift上的一个扩展名,它覆盖了UIButton.hitTest,破坏了iOS 11中的UIBarButtonItem。我们花了整整一天才弄清楚!

票数 6
EN

Stack Overflow用户

发布于 2017-09-21 09:16:47

iOS11 UIBarButtonItem action not get called

遇到同样的情况,我的解决方案是用xcode 8.3构建(使用ios11运行应用程序构建8.3的设备效果很好)

Use Xcode 8 with iOS 11您可以使用此解决方案在xcode 8.3上调试ios11设备

票数 1
EN

Stack Overflow用户

发布于 2017-09-21 09:30:19

是的,iOS 11中有bug,所以您可以使用其他方法。

使用interactivePopGestureRecognizer

代码语言:javascript
复制
 self.navigationController?.interactivePopGestureRecognizer?.delegate = self as! UIGestureRecognizerDelegate

并实现委托方法,如

代码语言:javascript
复制
 func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
        guard gestureRecognizer == interactivePopGestureRecognizer else {
            return true // default value
        }

        // Write you code here.
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46278620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档