1、说明

  • 说明:由于是在“iOS 模拟器”中测试的,所以不能用手指,只能用鼠标。

  • 1)UIControlEventTouchDown

    • 指鼠标左键按下(注:只是“按下”)的动作
  • 2)UIControlEventTouchDownRepeat

    • 指鼠标左键连续多次重复按下(注:只是“按下”)的动作,比如,鼠标连续双击、三击、……、多次连击。
    • 说明:多次重复按下时,事件序列是这样的:
    UIControlEventTouchDown -> 
    
    (UIControlEventTouchUpInside) -> 
    
    UIControlEventTouchDown -> 
    
    UIControlEventTouchDownRepeat -> 
    
    (UIControlEventTouchUpInside) -> 
    
    UIControlEventTouchDown -> 
    
    UIControlEventTouchDownRepeat -> 
    
    (UIControlEventTouchUpInside) ->
    ...
    • 除了第一次按下外,后面每次摁下都是一个UIControlEventTouchDown事件,然后紧跟一个UIControlEventTouchDownRepeat事件。
  • 3)UIControlEventTouchDragInside

    • 指按下鼠标,然后在控件边界范围内拖动。
  • 4)UIControlEventTouchDragOutside

    • 与UIControlEventTouchDragInside不同的是,拖动时,鼠标位于控件边界范围之外。
    • 但首先得有个UIControlEventTouchDown事件,然后接一个UIControlEventTouchDragInside事件,再接一个UIControlEventTouchDragExit事件,
    • 这时,鼠标已经位于控件外了,继续拖动就是UIControlEventTouchDragOutside事件了。
    • 具体操作是:在控件里面按下鼠标,然后拖动到控件之外。
  • 5)UIControlEventTouchDragEnter

    • 指拖动动作中,从控件边界外到内时产生的事件。
  • 6)UIControlEventTouchDragExit

    • 指拖动动作中,从控件边界内到外时产生的事件。
  • 7)UIControlEventTouchUpInside

    • 指鼠标在控件范围内抬起,前提先得按下,即UIControlEventTouchDown或UIControlEventTouchDownRepeat事件。
  • 8)UIControlEventTouchUpOutside

    • 指鼠标在控件边界范围外抬起,前提先得按下,然后拖动到控件外,
    • 即 UIControlEventTouchDown -> UIControlEventTouchDragInside(n 个) -> UIControlEventTouchDragExit -> UIControlEventTouchDragOutside(n 个) 时间序列,再然后就是抬起鼠标,产生UIControlEventTouchUpOutside事件。

UIButton的几种触发方式的更多相关文章

  1. ios UIButton得 几种触发方式

    在控件事件中,简单解释下下面几个事件.说明:由于是在“iOS 模拟器”中测试的,所以不能用手指,只能用鼠标.1)UIControlEventTouchDown指鼠标左键按下(注:只是“按下”)的动作2 ...

  2. UIButton的两种block传值方式

    UIButton的两种block传值方式 方式1 - 作为属性来传值 BlockView.h 与 BlockView.m // // BlockView.h // Block // // Create ...

  3. 关于moucedown 的3种触发方式

    与 click 事件不同   mousedown 按下鼠标就可以触发 click 只能用鼠标左键触发, 而mousedown 可以由单击.中键.或右击 触发 根据对event.which 的判断,可以 ...

  4. IOS开发基础知识碎片-导航

    1:IOS开发基础知识--碎片1 a:NSString与NSInteger的互换 b:Objective-c中集合里面不能存放基础类型,比如int string float等,只能把它们转化成对象才可 ...

  5. IOS开发基础知识--碎片45

    1:iOS SEL的简单总结 SEL就是对方法的一种包装.包装的SEL类型数据它对应相应的方法地址,找到方法地址就可以调用方法 a.方法的存储位置 在内存中每个类的方法都存储在类对象中 每个方法都有一 ...

  6. ios中addtarget

    Target-action:目标-动作模式,它贯穿于iOS开发始终.但是对于初学者来说,还是被这种模式搞得一头雾水. 其实Target-action模式很简单,就是当某个事件发生时,调用那个对象中的那 ...

  7. Objective-C释解 Target-Action模式

    Objective-C释解 Target-Action模式   Target-Action模式是ObjC里非常常见的对象之间方法调用的方式,不过ObjC把方法调用叫做Send Message. 一帮情 ...

  8. iOS 开发之Target-action模式

    Target-action:目标-动作模式,它贯穿于iOS开发始终.但是对于初学者来说,还是被这种模式搞得一头雾水. 其实Target-action模式很简单,就是当某个事件发生时,调用那个对象中的那 ...

  9. AFNetworking 3.0 源码解读(十一)之 UIButton/UIProgressView/UIWebView + AFNetworking

    AFNetworking的源码解读马上就结束了,这一篇应该算是倒数第二篇,下一篇会是对AFNetworking中的技术点进行总结. 前言 上一篇我们总结了 UIActivityIndicatorVie ...

随机推荐

  1. 微信小程序之表单提交

    页面绑定很多事件! <view class="content"> <view class="user personal_func_list"& ...

  2. 初学Python--列表(List)

    1.索引 列表中的元素类型未必统一,如: listExample=[1,2,'a','b'] 元素下标索引以0开始 firstEle=listExample[0] 不能进行越界索引,但可以倒序索引 l ...

  3. JAXB 专题二(BSP接口实战)

    BSP下单接口 1.xml格式如下 <?xml version="1.0" encoding="utf-8"?> <Request servi ...

  4. requirejs——基础

    一.requirejs存在的意义: 我们引用外部JS文件通常是这样引用的: <script src="1.js"></script> <script ...

  5. leetcode908

    int smallestRangeI(vector<int>& A, int K) { int min = INT_MAX; int max = INT_MIN; for (aut ...

  6. 【原】Coursera—Andrew Ng机器学习—编程作业 Programming Exercise 2——逻辑回归

    作业说明 Exercise 2,Week 3,使用Octave实现逻辑回归模型.数据集  ex2data1.txt ,ex2data2.txt 实现 Sigmoid .代价函数计算Computing ...

  7. 【原创】0. MYSQL++的环境准备

    1. 获取 Google MYSQL++,第一个就是,然后跟着要求进行下载. 2. 编译和安装 其实在作者的各种README文档里面已经写得很清楚了,现在对一些可能会出现问题的地方进行一下回顾. Wi ...

  8. 【FZU2278】YYS

    题意 这里有n种卡片,如果你想得到一张新的卡片,你需要花费W枚硬币来抽一张卡片.每次只能抽一张.所有的卡片出现的概率都是1/n,你每天可以得到1枚硬币.初始时候没有硬币也没有卡片.每W天,你就会抽一张 ...

  9. maven学习总结-eclipse开发

    一.创建Web项目 1.1 选择建立Maven Project 选择File -> New ->Project,如下图所示:

  10. Android Studio 编译提示 No installed build tools found. Please install the Android build tools

    添加 ANDROID_HOME=D:\Android\adt-bundle-windows\sdk 系统变量即可