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 ...
随机推荐
- 加载本地html遇到的问题
之前要做一个Demo,需要用UIWebView来加载网页,前端的同事把资源包给我,里面包含html,css,JavaScript,图片等文件.我想当然的把文件夹拷到工程中,然后用以下方法加载: NSU ...
- 生成ssl证书文件
网上关于生成SSL证书文件的方法有很多,但我查了几个,发现有或多或少的错误,如下我图文并茂的展示,亲测无任何问题,分享给大家,谢谢. 1.创建根证书密钥文件(自己做CA)root.key openss ...
- Sybase配置中文语言支持及字符集
在windows平台上,Sybase ASE15.0.7安装完成后默认语言是:英语(us_english),默认字符集为:cp850.cp850是一个西欧字符集,虽然也能使用cp850字符集保存汉字, ...
- [裸KMP][HDU1711][Number Sequence]
题意 找到子串在母串出现的第一个位置 解法 裸的KMP 特别的地方 第一次不看模板自己敲的KMP #include<stdio.h> const int maxn=100000; cons ...
- 改变页面选择文字颜色和背景颜色----selection伪元素
div::selection{color:#fff;background: #E83E84;text-shadow:none}
- CentOS Apache服务器安装与配置
原文地址:http://www.linuxidc.com/Linux/2014-01/95256.htm 一.安装Apache程序,一般有三种安装方式: Apache在centos下httpd1.直接 ...
- Leetcode 226 Invert Binary Tree python
题目: Invert a binary tree. 翻转二叉树. 递归,每次对节点的左右节点调用invertTree函数,直到叶节点. python中也没有swap函数,当然你可以写一个,不过pyth ...
- Windows Message Queue--hdu1509
Windows Message Queue Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...
- To and Fro(字符串水题)
To and Fro 点我 Problem Description Mo and Larry have devised a way of encrypting messages. They first ...
- QTableWidget嵌入QpushButton后定位QpushButton
问题: 有时候会遇到这样的情况,在QTableWidget中我们需要嵌入一个QpushButton按钮,但是如何确定是哪个Button按下的呢? 解决: 一般地,一个按钮按下后会连接到一槽函数,那么在 ...