UIButton 文档翻译(持续更新)
UIButton 文档翻译
继承
UIControl; UIView; UIResponder; NSObject
协议
UIFocusEnvironment,UIAppearanceContainer,NSObject,UICoordinateSpace,UITraitEnvironment,NSCoding,UIDynamicltem,UIAppearance
框架
UIKit in iOS2.0和更改版本
重要
这是一个软件开发的初级 API 文档,虽然这个文档进行了技术准确性的审查,但是它仍旧不是最后版本。这份文档信息只适用于加入苹果开发者计划的用户,苹果提供这份文档信息以帮助您快速使用这里所描述的技术和编程接口,本信息如有更改,应根据文件实现的软件与操作系统软件进行测试。本文档的新版将持续更新。
一个 UIButton 对象是一个视图,执行自定义的代码去响应用户交互。当你点击一个按钮,或者选择具有焦点的按钮,按钮能够响应任何点击事件,你可以通过按钮的文本标签或者图片来表示按钮的目的,或者可以通过两者来表达。按钮的外观是可设置的,所以你可以让按钮的样式和文本样式来匹配应用程序的设计,你可以通过编写代码或者拖拽界面生成按钮在接口文件当中。

当添加一个按钮到你的界面,请执行以下步骤:
- 设置按钮创建时的类型
- 提供一个文本字符串或者图片;按钮的尺寸适合您的内容。
- 给按钮连接一个或多个方法
- 设置自动布局来管理按钮在你的界面上的尺寸和位置
- 提供辅助信息和本地化字符串
有关基本视图行为的信息,请参阅查看适用于 iOS 的编程指南
响应按钮的监听
- 当用户点击按钮时,按钮使用目标-事件设计模式通知你的应用程序。不会直接处理触摸事件,你指定响应事件的方法或指令,该事件会触发你的方法的调用。在运行时,按键处理所有传入的触摸事件,并且响应调用你的方法。
- 你通过建立界面连接,把一个按钮绑定
addTarget:action:forControlEvents:这个方法,事件方法的签名采用三种形式,列表1:选择提供信息的表格,你需要去响应按钮的点击.
列表1 按钮的事件方法
// OC
- (IBAction)doSomething; // 做某事
- (IBAction)doSomething:(id)sender; // 通过某个对象做某事
- (IBAction)doSomething:(id)sender forEvent:(UIEvent*)event; // 通过某个对象响应某个事件做某事
// swift
@IBAction func doSomething()
@IBAction func doSomething(sender: a href="" UIButton /a )
@IBAction func doSomething(sender: a href="" UIButton /a , forEvent event: a href="" UIEvent /a )
配置按钮的外观
定义一个按钮的基本外观和行为的类型,你需要在创建这个按钮时使用 buttonWithType:这个方法或者在 storyboard 当中的文件列表当中进行选择设置。在创建按钮之后,你不能够改变它的类型,大部分情况下,会使用按钮的类型是自定义类型和系统默认类型,但是在某些特殊情况下也会使用其他类型。
注意
配置你应用程序里面所有按钮的外观时,使用外观代理对象。该按钮的类实现了外观类的方法,你可以通过代理来获取你应用程序当中所有按钮的外观,
按钮的状态
按钮有5种外观状态:默认,高亮,聚焦,选中和不可用状态。当你在接口界面添加一个按钮时,它最初的状态是默认状态,意思是按钮是可用状态但是用户不与它进行交互。随着用户与按钮进行交互,其状态改变为其他值。例如,当用户点击按钮上的标题时,按钮会变为高亮状态。
当在用户界面或者以代码形式配置按钮时,你要单独设置每个按钮的属性。在用户界面中,使用状态配置控制在属性检查器中选择合适的状态并且配置其他的属性,如果你不为属性指定特定的状态,那么按钮的类会提供一个默认的状态。例如:被禁用按钮通常为灰色,点击时不会显示高亮状态。这个类的其他属性,如:
adjustsImageWhenHighlighted和adjustsImageWhenDisabled的属性,能够改变特定情况下的默认状态。
内容
UIButton 文档翻译(持续更新)的更多相关文章
- 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新
微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...
- iOS系列教程 目录 (持续更新...)
前言: 听说搞iOS的都是高富帅,身边妹子无数.咱也来玩玩.哈哈. 本篇所有内容使用的是XCode工具.Swift语言进行开发. 我现在也是学习阶段,每一篇内容都是经过自己实际编写完一遍之后,发现 ...
- ASP.NET MVC 5 系列 学习笔记 目录 (持续更新...)
前言: 记得当初培训的时候,学习的还是ASP.NET,现在回想一下,图片水印.统计人数.过滤器....HttpHandler是多么的经典! 不过后来接触到了MVC,便立马爱上了它.Model-View ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- iOS开发系列文章(持续更新……)
iOS开发系列的文章,内容循序渐进,包含C语言.ObjC.iOS开发以及日后要写的游戏开发和Swift编程几部分内容.文章会持续更新,希望大家多多关注,如果文章对你有帮助请点赞支持,多谢! 为了方便大 ...
- 基于android studio的快捷开发(将持续更新)
对于Android studio作为谷歌公司的亲儿子,自然有它的好用的地方,特别是gradle方式和快捷提示方式真的很棒.下面是我在实际开发中一些比较喜欢用的快速开发快捷键,对于基本的那些就不多说了. ...
- 总结js常用函数和常用技巧(持续更新)
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- 我的敏捷、需求分析、UML、软件设计电子书 - 下载(持续更新中)
我将所有我的电子书汇总在一起,方便大家下载!(持续更新) 文档保存在我的网站——软件知识原创基地上(www.umlonline.org),请放心下载. 1)软件设计是怎样炼成的?(2014-4-1 发 ...
- React Native之坑总结(持续更新)
React Native之坑总结(持续更新) Genymotion安装与启动 之前我用的是蓝叠(BlueStack)模拟器,跑RN程序也遇到了一些问题,都通过搜索引擎解决了,不过没有记录. 但是Blu ...
随机推荐
- javascript 判断系统设备
<script> function detectOS() { var sUserAgent = navigator.userAgent; var isWin = (navigator.pl ...
- Javascript进阶篇——(流程控制语句)笔记整理
做判断(if语句)if语句是基于条件成立才执行相应代码时使用的语句.语法: if(条件){ 条件成立时执行代码 } 例子:假设你应聘web前端技术开发岗位,如果你会HTML技术,你面试成功,欢迎加入公 ...
- js判断是否为ie的方法
原文:http://blog.sina.com.cn/s/blog_7bbe4a850100v95z.html 下面第三种亲测可用 第一种: if(window.addEventListener){ ...
- First Bad Version
You are a product manager and currently leading a team to develop a new product. Unfortunately, the ...
- Repository,UnitOfWork,DbContext(1)
一.前言 终于到EF了,实在不好意思,最近有点忙,本篇离上一篇发布已经一个多星期了,工作中的小迭代告一段落,终于有点时间来继续我们的架构设计了,在这里先对大家表示歉意. 其实这段时间我并不是把这个系列 ...
- HDU 5730 - Shell Necklace
题意: 给出连续的1-n个珠子的涂色方法 a[i](1<=i<=n), 问长度为n的珠链共有多少种涂色方案 分析: 可以得到DP方程: DP[n] = ∑(i=1,n) (DP[n-i]* ...
- Java多线程编程总结(精华)
Java多线程编程总结 2007-05-17 11:21:59 标签:多线程 java 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http ...
- CentOS6.5下Mysql数据库的安装与配置
一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱 ...
- Repository仓储 UnitofWork
Repository仓储 UnitofWork 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 本章我们来创建仓储类Repository 并且引入 UnitOfWork 我对 ...
- MySQL与unix时间问题
1.select unix_timestamp() -->可以返回以秒记的unix时间. 2.select from_unixtime('1455804595','%Y年%m月%d号'); -- ...