职能企业保护职业创业
投稿投诉
创业安检
掌握呵护
案例安身
升初专业
职业小学
形象知识
工作提高
科技职级
保护职务
法务经验
安保方法
中考作文
技巧安全
初中魅力
常识安心
保全安护
企业技能
生活安务
法律纠纷
技艺百科
职能能力
技术安监
培训提升
辩护水平

iOS的UI开发中Button的基本编写方法解析

4月28日 暗影泪投稿
  iOS的UI开发中Button的基本编写方法解析
  一、简单说明
  一般情况下,点击某个控件后,会做出相应反应的都是按钮
  按钮的功能比较多,既能显示文字,又能显示图片,还能随时调整内部图片和文字的位置
  二、按钮的三种状态
  normal(普通状态)
  默认情况(Default)
  对应的枚举常量:UIControlStateNormal
  highlighted(高亮状态)
  按钮被按下去的时候(手指还未松开)
  对应的枚举常量:UIControlStateHighlighted
  disabled(失效状态,不可用状态)
  如果enabled属性为NO,就是处于disable状态,代表按钮不可以被点击
  对应的枚举常量:UIControlStateDisabled
  三、注意点
  (1)从Xcode5开始,图片资源都放到Images。xcassets中进行管理,可以使用拖拽的方式添加项目中用到的图片到Images。xcassets中
  (2)若干多个控件共用一段代码,通常使用tag。
  四、代码示例
  (1)
  复制代码代码如下:
  LFViewController。
  interfaceLFViewController()
  property(weak,nonatomic)IBOutletUIButtonheadImageV
  end
  implementationLFViewController
  在OC中,绝大多数的控件的监听方法的第一个参数就是控件本身
  (IBAction)left:(UIButton)button{
  NSLog();
  }
  (IBAction)move
  {
  通过frame修改head的位置
  在OC中,不允许直接修改“对象”的“结构体属性”的“成员”
  允许修改“对象”的“结构体属性”
  1。取出结构体属性
  CGRectrectself。headImageView。
  2。修改结构体成员
  rect。origin。y20;
  3。设置对象的结构体属性
  self。headImageView。
  }
  (2)
  复制代码代码如下:
  LFViewController。
  使用git
  1。创建项目时,勾选git
  2。开发告一段落后,选择SourceCC,并编写注释
  枚举类型实质上就是一个整数,作用就是用来替代魔法数字
  枚举类型中,指定了第一个整数之后,后面的数字会递增
  typedefenum
  kMovingDirTop10,
  kMovingDirBottom,
  kMovingDirLeft,
  kMovingDirRight,
  }kMovingD
  definekMovingDelta50
  interfaceLFViewController()
  property(weak,nonatomic)IBOutletUIButtonheadImageV
  end
  implementationLFViewController
  (IBAction)move:(UIButton)button
  CGRectrectself。headImageView。
  CGPointpself。headImageView。
  magicnumber魔法数字,其他程序员看到代码的时候,不知道是什么意思
  switch(button。tag){
  casekMovingDirTop:
  p。ykMovingD
  
  casekMovingDirBottom:
  p。ykMovingD
  
  casekMovingDirLeft:
  p。xkMovingD
  
  casekMovingDirRight:
  p。xkMovingD
  
  〔UIViewbeginAnimations:nilcontext:nil〕;
  〔UIViewsetAnimationDuration:1。0〕;
  self。headImageView。
  〔UIViewcommitAnimations〕;
  (IBAction)zoom:(UIButton)button
  CGRectrectself。headImageView。
  在C语言中,关于bool的判断:非零即真
  if(button。tag){
  rect。size。width50;
  rect。size。height50;
  rect。size。width50;
  rect。size。height50;
  首尾动画
  beginAnimations表示此后的代码要“参与到”动画中
  〔UIViewbeginAnimations:nilcontext:nil〕;
  〔UIViewsetAnimationDuration:2。0〕;
  self。headImageView。
  self。headImageView。alpha0;
  commitAnimations,将beginAnimation之后的所有动画提交并生成动画
  〔UIViewcommitAnimations〕;
  end
  五、补充笔记
  1。IBAction的参数
  (IBAction)left:(UIButton)button
  (1)在OC中,绝大多数的控件监听方法的第一个参数就是控件本身
  (2)默认连线时的参数类型是id
  (3)如果要在监听方法中,方便控件的。使用,可以在连线时或者连线后,修改监听方法的参数类型
  2。修改对象的结构体成员
  在OC中,不允许直接修改“对象”的“结构体属性”的“成员”,但是允许修改“对象”的“结构体属性”
  修改结构体属性的成员方法如下:
  (1)使用临时变量记录对象的结构体属性
  (2)修改临时变量的属性
  (3)将临时变量重新设置给对象的结构体属性
  3。在程序开发中需要避免出现魔法数字(MagicNumber)
  使用枚举类型,可以避免在程序中出现魔法数字
  (1)枚举类型实质上就是一个整数,其作用就是用来替代魔法数字
  (2)枚举类型中,指定了第一个整数之后,后面的数字会递增
  4。center
  1frame可以修改对象的位置和尺寸
  2bounds可以修改对象的尺寸
  3center可以修改对象的位置
  5。首尾式动画
  复制代码代码如下:
  beginAnimations表示此后的代码要“参与到”动画中
  〔UIViewbeginAnimations:nilcontext:nil〕;
  setAnimationDuration用来指定动画持续时间
  〔UIViewsetAnimationDuration:2。0〕;
  self。headImageView。
  。。。。。。
  commitAnimations,将beginAnimation之后的所有动画提交并生成动画
  〔UIViewcommitAnimations〕;
  下面来罗列一下UIButton的基本属性罗列
  第一、UIButton的定义
  复制代码代码如下:
  UIButtonbutton〔〔UIButtonbuttonWithType:(UIButtonType);
  能够定义的button类型有以下6种,
  复制代码代码如下:
  typedefenum{
  UIButtonTypeCustom0,自定义风格
  UIButtonTypeRoundedRect,圆角矩形
  UIButtonTypeDetailDisclosure,蓝色小箭头按钮,主要做详细说明用
  UIButtonTypeInfoLight,亮色感叹号
  UIButtonTypeInfoDark,暗色感叹号
  UIButtonTypeContactAdd,十字加号按钮
  }UIButtonT
  第二、设置frame
  复制代码代码如下:
  button1。frameCGRectMake(20,20,280,40);
  〔buttonsetFrame:CGRectMake(20,20,50,50)〕;
  第三、button背景色
  复制代码代码如下:
  button1。backgroundColor〔UIColorclearColor〕;
  〔buttonsetBackgroundColor:〔UIColorblueColor〕〕;
  第四、state状态
  forState:这个参数的作用是定义按钮的文字或图片在何种状态下才会显现
  复制代码代码如下:
  enum{
  UIControlStateNormal0,常规状态显现
  UIControlStateHighlighted10,高亮状态显现
  UIControlStateDisabled11,禁用的状态才会显现
  UIControlStateSelected12,选中状态
  UIControlStateApplication0x00FF0000,当应用程序标志时
  UIControlStateReserved0xFF000000为内部框架预留,可以不管他
  property(nonatomic,getterisEnabled)BOOLdefaultisYES。ifNO,ignorestoucheventsandsubclassesmaydrawdifferently
  property(nonatomic,getterisSelected)BOOLdefaultisNOmaybeusedbysomesubclassesorbyapplication
  property(nonatomic,getterisHighlighted)BOOL
  第五、设置button填充图片和背景图片
  复制代码代码如下:
  〔buttonsetImage:〔UIImageimageNamed:checkmarkControllerI〕forState:UIControlStateNormal〕;
  〔buttonsetBackgroundImage:〔UIImageimageNamed:checkmarkControllerI〕forState:UIControlStateNormal〕;
  第六、设置button标题和标题颜色
  复制代码代码如下:
  〔button1setTitle:点击forState:UIControlStateNormal〕;
  〔buttonsetTitleColor:〔UIColorredColor〕forState:UIControlStateNormal〕;
  第七、设置按钮按下会发光
  复制代码代码如下:
  button。showsTouchWhenHighlightedNO;
  第八、添加或删除事件处理
  复制代码代码如下:
  〔button1addTarget:selfaction:selector(butClick:)forControlEvents:UIControlEventTouchUpInside〕;
  〔btnremoveTarget:nilaction:nilforControlEvents:UIControlEventTouchUpInside〕;
  第九、设置按钮内部图片间距和标题间距
  复制代码代码如下:
  UIEdgeI设置按钮内部图片间距
  insets。topinsets。bottominsets。rightinsets。left10;
  bt。contentEdgeI
  bt。titleEdgeI标题间距
投诉 评论

手机qq摄像头背景打不开的处理方法手机qq摄像头背景打不开的处理方法手机qq摄像头背景主要为了走路的时候玩手机防止摔倒看不到路,这种功能对于小编来说比较打酱油,没什么多大用,只是为了体验新功能的童鞋们开启……ios9系统6位密码设置教程ios9系统6位密码设置教程当前苹果已经在9月17号正式发布了新一代iOS9系统,在新一代iOS9系统中,有很多新功能,比如今天这里说到的关于密码的改变。在原来的iOS系……脸被手机辐射怎么办脸被手机辐射怎么办手机现在是我们生活中必不可少的一部分,生活中如果没有了手机,相信很多人会出现极大的不适。从早晨的第一眼我们就翻看手机,看看朋友圈,又或者发发状态。天天手……11岁男孩点火烧卧室,孩子沉迷手机该怎么办11岁男孩点火烧卧室,孩子沉迷手机该怎么办最近一名11岁男孩点火烧卧室原因是家长收走了他的手机。孩子沉迷手机家长应该怎么做呢?粗暴地没收手机恐怕不是好办法,还容易造成事件……三星d528拆机图解步骤三星d528拆机图解步骤导语:手机界的大品牌除了我们熟知的苹果公司以外,就是韩国的三星公司。那么在三星手机的生产历史上,功能机的生产品质也是颇有口碑,今天要介绍的一款手机……苹果mac系统安装tex系统的方法苹果mac系统安装tex系统的方法用贯了windows系统的用户们肯定还都不是很习惯mac系统吧,在OSX上又该怎么安装tex系统呢?这里我们就来看看吧!比较简单的……乐视手机内存不够用怎么办乐视手机内存不够用怎么办乐视手机内存不够的解决方法一:下载前选择缓存路径为存储卡。一般手机内部存储空间不够大,下载视频占用内存空间太多,这种情况就需要更改手机……ios7。1正式版升级教程分解ios7。1正式版升级教程分解ios7。1正式版升级教程一、OTA升级:ios7。1方法(不推荐)1。将iPiPiTouch连……解决手机触摸屏失的方法解决手机触摸屏失的方法如今智能手机触摸屏均采用电容触摸屏,如果偶尔遇到手机触摸屏失灵,则建议先检查手机屏幕上是否有脏物、是否有汗水等等,有时候由于此类原因很容易导致电容触……小米5手机锁屏密码忘了怎么办小米5手机锁屏密码忘了怎么办很多智能手机用户都会给手机设置锁屏密码,来保护自己存放在手机内的个人隐私不被他们随意查看。因此,小米5手机用户也基本上都会给小米5设置锁屏密码……ios9。3。3越狱安装工具失败怎么办ios9。3。3越狱设ios9。3。3越狱安装工具失败怎么办ios9。3。3越狱设备初始化失败怎苹果宣布日前PP助手联合盘古再次全球首发越狱工具,成功实现iOS9。29。3。3的越狱!这次越狱……iOS的UI开发中Button的基本编写方法解析iOS的UI开发中Button的基本编写方法解析一、简单说明一般情况下,点击某个控件后,会做出相应反应的都是按钮按钮的功能比较多,既能显示文字,又能显示图片,……
高三学生如何缓解压力高三学生缓解压力方法1、做好保障,提高质量。爸爸妈妈给孩子更好的生活、物质的保障,让孩子能够更好的集中精力来学习,对于工作繁忙的家长,真的建议大家能抽出时间来认真的陪伴孩子、关心孩子,别让孩子把最……如何引导初中的孩子交朋友如何引导初中生交朋友1、用学习来交朋友。初中生主要的任务就是学习,而在学习过程中你会和很多同学一起探讨问题,研究题目怎么做,这样的同学可以发展成朋友,而且对你今后的发展绝对有好处。2、体育活……初三的孩子应该怎么教育初三的孩子应该如何是好1、随着孩子不断的长大,家庭关系也应该做出相应的调整,改变以往那种由家长决定一切、孩子只是服从的局面;家长需要多从孩子角度考虑问题。2、孩子上了初中,在学习中应经常注意新……怎么鼓励高考的孩子鼓励高考的孩子方法1、父母应该经常向他聊聊自己的现状。心里不顺时,通过语言的倾诉,能消除那些负面心态,太过兴奋时,让孩子觉得有这样的一个人为你保驾护航,无疑会轻松很多。2、让孩子选择一些好……初中男孩脾气暴躁怎么办初中男孩脾气暴躁怎么处理1、初中生情绪不稳定烦躁易怒应及时与老师、家长沟通,积极运动,及时进行心理咨询,必要时前往正规医院进行药物治疗。2、初中生孩子学业压力较大,身体发育迅速,可能会导致生理发……高二孩子成绩下滑家长怎么引导高二孩子成绩下滑家长如何引导1、首先,不要过分去关注考试的分数,而是引导孩子恰如其分分析自己“考试成绩下降”的原因,不仅要找出解决问题的相应方法,还要找出进一步提高的措施,切实做到查缺补漏,以达到有重点、……孩子高二倒数怎么办孩子高二倒数有什么办法1、制定学习计划:学习成绩不好的主要原因可能是没有一个良好的学习习惯和学习计划。从现在开始,你可以为自己制定一个切实可行的学习计划。根据计划,你可以循序渐进地实现你的学习目标,……孩子高二了不知道学怎么办孩子高二了不知道学解决方法1、对孩子进行理想教育。既然已经上高二了,那说明孩子还是比较优秀的,能够通过通过中招考试的选拔进入高中的学习。这时候我们可以通过一些正面人物的引导。2、给孩子一个心理的缓……孩子上高中厌学不想上学怎么办孩子上高中厌学不想上学有什么办法1、适当放松学习压力:当自己遇到一些大幅度的学习压力,这个时候可以放下书本,多去教室外面走走,避免出现更多的心理负担,这样也就减少了厌学的情绪。2、寻找高效学习的方法:对……如何做好高三孩子的家长做好高三孩子的家长方法1、作为家长来说,在这个阶段,乃至是整个高三阶段,就是要做好相应的配合工作,确保孩子能够在高考当中正常的发挥,而且最好是能够促进孩子的超常发挥,这是最理想的状态。2、家长……面对高三的孩子父母应该怎么做面对高三的孩子父母的做法1、高三阶段考试频繁,月考、联考纷至沓来。常在河边走,哪有不湿鞋?家长对于考试成绩不必太在意,不要因为一次考砸了,就喋喋不休,影响孩子的情绪。2、平常和孩子保持正常的沟通……初中男孩叛逆期该怎么处理初中男孩叛逆期作为家长该怎么处理1、叛逆期的初中男生已经是大人了,父母不拿再拿他当孩子来使唤了,要站在孩子的立场想问题,与孩子交流保持平等,要以商量的口吻与孩子交流,注意与孩子说话时的语气。2、多尊重孩……
友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找常识日常社交礼仪安全防范适应宝库新闻军事国内国际财经股票基金外汇科技手机众测体育娱乐时尚女性育儿