Spa*_*Dog 14 uibutton uibarbuttonitem ios11 xcode9beta6
还有另外一个关于此的问题,但这与它无关,因为我认为这与iOS 11的测试版有关.
我有这两个UIButton分组在一个内部UIView.使用Interface Builder 将此UIView置于a中UIBarButtonItem,并将整个内容设置为Left Bar Button Items.
单击时,每个按钮都会显示由故事板触发的弹出窗口.
我正在使用Xcode 8在运行iOS 9的iPad 3上进行测试.这非常有效.
现在我决定在运行iOS 11 beta 7的iPad Pro 9.7上进行测试.我正在使用Xcode 9 beta 6.当我在iPad Pro上运行时,导航栏上的所有按钮都已经死了. t响应点击.现在我尝试使用相同的Xcode 9 beta 6并使用iOS 9在iPad 3上运行应用程序,然后再次完成所有工作.
我正在为iOS 9.1编译.
按钮甚至不突出显示以确认点击,就像在iOS 9上一样.
iOS 11 beta 7和条形按钮项有问题吗?
有任何想法吗?
and*_*rey 16
我发现使用XCode 8构建的相同代码在ios10-11上运行良好,但是当我使用自定义视图使用XCode 9 UIBarButtonItem构建时,不响应点击.
看起来问题出现是因为从ios 11导航栏使用自动布局而不是处理帧.屏幕上的按钮看起来不错,但从技术上讲它们似乎是屏幕外的.
所以我的修复是将自动布局约束添加到我的自定义视图.
//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
Run Code Online (Sandbox Code Playgroud)
在该自定义右键按钮成功获得点击后.
我已经发现问题了!惊人的错误!
这就是演习。我通过这样做向左侧导航项添加了两个按钮:
UIButtons。这是针对 iOS 9 编译的,适用于 iOS 10 及更低版本的设备,但不适用于 iOS 11。
这样做的“正确”方法是这样的
UIButton左侧导航项。UIButton到左侧导航项。您将看到 iOS 允许这种情况发生,并将管理“导航项”下的两个按钮。
这适用于我从 9 月到 11 月测试过的所有 iOS 版本。
| 归档时间: |
|
| 查看次数: |
7390 次 |
| 最近记录: |