首页 文章

UIButton事件 . 有什么不同?

提问于
浏览
53

我遇到了一个问题,我的按钮应该保持“按下”,同时它显示从它调用的弹出窗口 . Popover是一些过滤器的选择器,过滤器显示在按钮本身上 . 当我点击它并显示弹出时,无论如何都会取消选择 .

我想我必须重新定义它在触摸事件中的行为,并使其不响应标准 touch up inside . 然后我想知道其他事件的责任是什么?但我无法在iOS库中找到事件列表,而在StackOverflow中只能查询 touch up insidetouch down 的错误行为 .

那么触摸事件之间的区别是什么?

  • 触摸取消 - 当您触摸按钮但移开手指时它仍然被取消选择?

  • 触地 - 右键点击 .

  • 触地重复?

  • 触摸拖动输入?

  • 触摸拖出?

  • 触摸里面?

  • 触摸外面?

  • 内部触摸 - 当你点击并释放按钮时,它会保持在界限内 . 它将UIButtons状态更改为Normal .

  • 在外面触摸 - 当你点击并释放按钮离开它的界限?

其他IBActions不是由UIButton发送的,对吗?这些事件如何改变UIButton的外观?喜欢 highlightedselected

我很欣赏关于IBActions的好文章的链接,因为我找不到它 .

1 回答

  • 132

    来自Apple's doc for UIControlEvents

    UIControlEventTouchCancel取消控件当前触摸的系统事件 . UIControlEventTouchDown控件中的触摸事件 . UIControlEventTouchDownRepeat控件中重复的触摸事件;对于此事件,UITouch tapCount方法的值大于1 . UIControlEventTouchDragEnter将手指拖入控件边界的事件 . UIControlEventTouchDragExit手指从控件内拖动到其边界外的事件 . UIControlEventTouchDragInside手指在控件边界内拖动的事件 . UIControlEventTouchDragOutside手指在控件边界外拖动的事件 . UIControlEventTouchUpInside控件中的触摸事件,其中手指位于控件的边界内 . UIControlEventTouchUpOutside控件中的触摸事件,其中手指位于控件的边界之外 .

相关问题