我在两种完全不同的情况下遇到了这个问题,这使得它非常奇怪。
- 情况:一个 UIButton 作为另一个 UIView 的子视图。
- 情况:UIBarButtonItem 在 UIToolBar 中。
在这两种情况下,按钮仅在稍有延迟(大约 0.5 - 1 秒)后才会突出显示。正常点击时突出显示视图肯定太长了。它们都可以在模拟器上完美运行,但不能在真实设备上运行(我有一台装有 iOS 7.0.4 的 iPhone 5s)。
我尝试过的
将 zPosition 设置为这些视图的最高值 (MAXFLOAT),以确保没有任何东西阻挡点击。
明确启用突出显示。
显然两者都不起作用。
编辑:仍然没有解决。
如果按钮放置在靠近显示屏底部边缘的位置,则可能会发生这种情况。显示控制中心(或 iPhone X 和 iPad 上的应用程序切换器)的系统边缘手势存在冲突。它会延迟按钮的触摸,直到确定用户没有执行系统手势。
如果您愿意,您可以告诉系统让您的手势优先于系统手势。
override func preferredScreenEdgesDeferringSystemGestures() -> UIRectEdge {
return .bottom
}
但请注意,这将需要用户滑动两次才能激活系统手势。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)