两者似乎都具有完全相同的效果。当手指离控制器足够远时,它们都来了。 “bounds”实际上并不是UIControlEventTouchDragExit的标准。它只有在距离足够远时才会被解雇......
答案 0 :(得分:12)
我来这里寻找同样的事情,eOgas的答案似乎并不准确。我做了我自己的测试用例,这里是那些想要详细解答而不必亲自测试的人的结果:
<强> UIControlEventTouchDragExit 强>
<强> UIControlEventTouchDragOutside 强>
为了更好地理解或记住,您可以将这些事件与离开(和来到)他们家的人进行比较,其中他们只有 退出 一次,但后来继续反复移动 在之外。此外,一个人只有 进入 他们的房子,然后重复移动 。
* UIControl对象周围的额外空间,考虑到用户不精确触摸的可能性。
答案 1 :(得分:6)
<强> UIControlEventTouchDragOutside 强> 手指被拖到控件范围之外的事件。
<强> UIControlEventTouchDragExit 强> 将手指从控件内拖动到其边界之外的事件。
听起来UIControlEventTouchDragOutside会在用户触摸边界外时触发,无论手指是否在边界内。 UIControlEventTouchDragExit仅在手指从边界内拖动到边界外时触发。
因此,在调整控件大小(边缘点击,然后拖动)时将使用UIControlEventTouchDragOutside,而UIControlEventTouchDragExit将用于移动控件(点击内部并拖动)。