Swift:触摸不立即注册位于UIViewController底部的UIButtons

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift:触摸不立即注册位于UIViewController底部的UIButtons相关的知识,希望对你有一定的参考价值。

我遇到了一种我无法解决的奇怪行为。如果我将UIButton放置在主故事板的UIViewController的底部,则不会立即注册它。触摸登记需要大约0.5秒。您可以在标准UIButtons更改文本颜色时看到它们。我对UIViewController中其他地方的按钮没有这个问题。

我所做的只是将15个UIButtons的垂直堆栈视图添加到新应用程序的主视图控制器中。当我在iPhone 6或iPhone 8(实际设备)上执行应用程序时,最低按钮的行为会有所不同。触摸它不会立即改变文本颜色,而它会对所有其他按钮改变。

有没有人遇到过同样的问题?有没有办法解决这个问题,或者我只是在框架中发现了一个错误?我正在使用Xcode 9.2,部署目标是ios 11.2。

答案

转到AppDelegate并尝试添加:

for gesture in self.window.gestureRecognizers {
    gesture.delaysTouchesBegan = NO;
}

它将阻止系统检查您是否正在尝试打开控制中心。

以上是关于Swift:触摸不立即注册位于UIViewController底部的UIButtons的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 中使用 touchesMoved 跟踪触摸

(Swift) 如何使用触摸按钮更改 pageviewcontroller 中的视图

视图控制器演示 Swift 3

通过多个 UIView 注册触摸

Swift - 立即解析 Facebook 登录默认为用户取消登录

触摸 UIControl 时如何关闭键盘?