菜鸟教程小白 发表于 2022-12-13 15:50:23

ios - 屏幕特定区域中的 UIButtons 会延迟 Touch Down 事件


                                            <p><p>我正在为 iOS 创建一个自定义键盘。我有 4 行按键,每个按键有两个 Action :Touch Down 以突出显示按钮,以及 Touch Up Inside 以在 0.4 秒内取消突出显示按钮。
但是在屏幕的左边缘有一个区域,其中任何按钮的 Touch Down 事件都会延迟大约四分之一秒以显示突出显示。
<a href="http://i.stack.imgur.com/B33Yo.jpg" rel="noreferrer noopener nofollow">See the image</a>
所以要查看突出显示的版本,我必须按住按钮,或者从它向右滑动。按钮是一样的,没有区别。当我从字母切换到符号时,这个左边缘区域也会产生同样的延迟。我尝试将所有键向右移动大约 20 像素,并且它们运行良好,没有延迟。好的,坚持到边缘回来,延迟也回来了。然后我注意到,按下右侧边缘的按钮,大约 1-2 个像素根本没有延迟。因此,似乎问题尤其出在屏幕的左侧边缘区域。
顺便说一句,我在我的5S上运行这个应用程序,我试图在我 friend 的5C上运行它,同样的问题。但是当我在模拟器中运行时,就没有这样的延迟了。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用 iOS 11 的新功能绝对可以解决这个问题。</p>

<pre><code>var preferredScreenEdgesDeferringSystemGestures: UIRectEdge { get }
</code></pre>

<p> <a href="https://developer.apple.com/documentation/uikit/uiviewcontroller/2887512-preferredscreenedgesdeferringsys" rel="noreferrer noopener nofollow">Documentation</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 屏幕特定区域中的 UIButtons 会延迟 Touch Down 事件,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/36492476/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/36492476/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 屏幕特定区域中的 UIButtons 会延迟 Touch Down 事件