文档章节

按钮的几种状态的区别

奋斗的青春年华
 奋斗的青春年华
发布于 2016/06/28 14:50
字数 257
阅读 65
收藏 0

几种状态:

enum {
   UIControlStateNormal               = 0,
   UIControlStateHighlighted          = 1 << 0,
   UIControlStateDisabled             = 1 << 1,
   UIControlStateSelected             = 1 << 2,
   UIControlStateApplication          = 0x00FF0000,
   UIControlStateReserved             = 0xFF000000
};

这几种状态的时序变化顺序:

1.什么都没干的时候:Normal

2.当你的手指按下去,还没放的时候:Highlighted

3.当手指放开的时候:如果这个 UIControl 有 Selected 状态的话,就会变成: Selected

再重复上述过程一次,就会从 Selected->Highlighted-> Normal

但是普通的 UIButton 这个 UIControl 的 subclass,是没有 Selected 状态的,它就只有 Normal 和 Highlighted,只会在这两个状态间切换。(正常情况下,如果你设置了 disable 的话,还会变到 Disabled)

非常自然的时序:Normal -> Highlighted -> Selected -> Normal。

也可以理解为:

  • 手指按到控件,UIControl更新ControlState到Highlighted
  • 手指离开控件,一般UIControl更新ControlState到Selected
  • Highlighted -> Selected之后的状态取决于具体的UIControl子类,其实连UITableViewCell也有这三种状态,Cell还是UIView的子类,这种特殊的状态默认就不会更新回Normal了~


  •  

 

© 著作权归作者所有

共有 人打赏支持
奋斗的青春年华
粉丝 1
博文 173
码字总数 103979
作品 0
浦东
私信 提问
简述HP iLO中的几种开关机选项

ILO是intergrated Light-Out的缩写,是HP的远程管理功能,它可以实现远程开关机、远程安装、远程连接等功能。 笔者刚接触HP服务器时对四个关于开关机的选项非常困惑,不明其中区别。此文写予...

linuxprobe16
2016/11/05
22
0
详解location.href几种用法的区别

一:提出问题 使用js的同学一定知道js的location.href的作用是什么,但是在js中关于location.href的用法究竟有哪几种,究竟有哪些区别,估计很多人都不知道了。 blog已经迁移到这里了,有更多...

phping
2013/03/04
0
5
关于android按钮监听的方式求分析

今天突然想了解android按钮监听几种方式的区别,总觉得几种方式肯定有区别,但就是没找到相应资料,特来此处求助

真的没有名字
2014/02/24
371
4
程序员的自我修养——操作系统篇

目录: 1. 进程的有哪几种状态,状态转换图,及导致转换的事件。 2. 进程与线程的区别。 3. 进程通信的几种方式。 4. 线程同步几种方式。 5. 线程的实现方式. (用户线程与内核线程的区别) 6...

马浩
2014/06/30
0
0
[Prism练习] Prism下MVVM中命令绑定的CanExecute问题

找到Command绑定有点问题,想拿出来讨论下。 比如,一个新增资料的界面中,我想:用户必须将所有应填写的数据项填写完毕后提交按钮才可用。 于是我们开始劵起袖子 2 using System.Collectio...

andrewniu
05/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

layer

Layui Layer在open弹出层中异步加载数据和form表单radio、checkbox、select不渲染,不可点击的解决办法 layer 实现弹窗提交信息 function confirmUpdateAward(i) { layer.open({ ...

mickelfeng
55分钟前
0
0
Spring boot中如何获取profiles环境

  实现ApplicationContextAware @Componentpublic class QiNiuPropertiesConfig implements ApplicationContextAware { /// 获取当前环境public String getActiveProfile() { ret......

writeademo
今天
3
0
机器学习中的End-to-End到底是怎么回事?

简单讲就是,Input--->系统(这里指神经网络)--->Output(直接给出输入,NN神经网络就给出结果,一气喝成!!!) 借用一段对话:(http://dy.163.com/v2/article/detail/C3J6F2NJ0511AQHO....

火力全開
今天
2
0
maven多个模块只编译并且只打包指定的模块

在多module的maven项目中,如果每次打包整个工程显得有些冗余和笨重。 命令:mvn clean package install -pl 模块的名称 -am

lifes77
今天
0
0
eosjs中文手册【2.0】

访问地址:eosjs 2.0 中文手册 - 汇智网

汇智网教程
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部