gpt4 book ai didi

uibutton - UIBarButtonItem 在 iOS 11 beta 7 上不可点击?

转载 作者:行者123 更新时间:2023-12-02 12:07:02 25 4
gpt4 key购买 nike

关于此问题还有另一个问题,但这与此无关,因为我认为这与 iOS 11 的测试版有关。

我有这 2 个 UIButton,它们分组在 UIView 内。该 UIView 被放入 UIBarButtonItem 内,并使用 Interface Builder 将整个内容设置为 Left Bar Button Items

单击每个按钮时,都会显示一个由 Storyboard触发的弹出窗口。

我正在运行 iOS 9 的 iPad 3 上使用 Xcode 8 进行测试。效果非常好。

现在我决定在运行 iOS 11 beta 7 的 iPad Pro 9.7"上测试这个。我使用的是 Xcode 9 beta 6。当我在 iPad Pro 上运行这个时,导航栏上的所有按钮都失效了。它们不响应点击。现在我尝试相同的 Xcode 9 beta 6 并在装有 iOS 9 的 iPad 3 上运行该应用程序,一切都运行良好。

我正在针对 iOS 9.1 进行编译。

按钮甚至不会像 iOS 9 上那样突出显示以确认点击。

iOS 11 beta 7 和栏按钮项目是否存在问题?

有什么想法吗?

最佳答案

我发现使用 XCode 8 构建的相同代码在 ios10-11 上运行良好,但是当我使用带有自定义 View 的 XCode 9 UIBarButtonItem 构建时,不会响应点击。

看起来出现这个问题是因为从ios 11开始导航栏使用自动布局而不是处理框架。屏幕上的按钮看起来不错,但从技术上讲,它们似乎位于屏幕外。

所以我的解决方法是向我的自定义 View 添加自动布局约束。

//my custom view init
let view = MyCustomView()
view.frame = CGRect(x: 0, y: 0, width: 44, height: 44)
let rightButtonItem = UIBarButtonItem(customView: view)

//constraints
let widthConstraint = view.widthAnchor.constraint(equalToConstant: 44)
let heightConstraint = view.heightAnchor.constraint(equalToConstant: 44)

heightConstraint.isActive = true
widthConstraint.isActive = true

//add my view to nav bar
self.rightBarButtonItem = rightButtonItem

自定义右栏按钮成功收到点击后。

关于uibutton - UIBarButtonItem 在 iOS 11 beta 7 上不可点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45854203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com