***Xcode Interface Builder或Storyboard中可建立那两种连接?
在Xcode Interface Builder或Storyboard中,可建立到输出口(IBOutlet)和操作(方法,IBAction)的连接。
IBOutlet are for output Controls like Labels and TextFields, while IBAction are mostly for Objects like Buttons.
到 IBOutlet的连接可以实现在代码中引用和使用 UI 元素,如Label、TextBox等等;
— 创建连接的方法(1) :按住Control 键,并从场景的View Controller 图标,拖曳到视图中可视化 UI 上;释放按键,将出现一个下拉列表菜单,其中列出了可供选择的IBOutlet(输出口,或变量),正确选择即可。
— 创建连接的方法(2) :按住Control 键,并从可视化的 UI 元素(如Label、TextField等等)上拖曳到对应的interface 头文件上。Xcode 在屏幕上显示一条线,表示连接。在幕后,Storyboard中添加一段XML语句,表示上述连接。

在释放按钮后,将弹出窗口,让你配置连接参数。在Connection 字段选择 IBOutlet 作为连接类型。同时,指定IBOutlet参数名称(Name),后面的代码中会使用到。另外,正确选择对象类型Type和存储类型 Storage,如下图所示:

右击 TextField UI 元素,将弹出 Connection Objects 列表。可以看到Reference Outlets节点,TextField 和View Controller之间的连接;另外, 在头文件中,也可以看到IBOutlet变量前面有一个点,表示已建立了连接。如下图所示:

到IBAction 的连接,定义了一个UI 事件,如点击按钮Button,该事件将执行操作方法(也就是触发代码中的方法)。
— 创建连接的方法(1) :首先在Interface Builder 界面,选择需要调用或关联操作的 UI 元素,如Button,并点击 Utility 区域顶部的箭头头部(Connections Inspector -连接检查器)。Connections Inspector 显示了当前对象(Button)所支持的事件列表,可单击相应方法的圆圈,并将其拖曳到文档大纲区域中的View Controller 图标上。
在释放鼠标,选择相应的操作或方法,即可完成。
— 创建连接的方法(2) :选择Button,重复上面的操作方法。但是这一次,选择IBAction作为连接。

可注意到 Type 变为id,且出现了2个新的配置项:Event 和 Arguments。对于 Event,可选择 Touch Up Outside,对于 arguments 项,保持默认的 Sender 值。点击Connect按钮,在头文件中创建相应的代码,并建立连接。

下图是建立和IBOutlet 和 IBAction 连接之后,interface 文件中变量和方法前面的点标识示意:

***Xcode Interface Builder或Storyboard中可建立那两种连接?的更多相关文章
- XCode Interface Builder开发——2
XCode Interface Builder开发--2 简单的练手项目--仿苹果自备的计算器 简介 制作一个简易功能的计算器并非难事,但是其中要考虑的不同情况却仍有许多,稍不留神就会踩坑. 例如: ...
- XCode Interface Builder开发——1
XCode Interface Builder开发--1 创建Xcode项目 选择第二个选项 选择Single View App,点击Next 设置完后点击Next Xcode基本面板 导航面板 工具 ...
- MySQL中MyISAM和InnoDB两种主流存储引擎的特点
一.数据库引擎(Engines)的概念 MySQ5.6L的架构图: MySQL的存储引擎全称为(Pluggable Storage Engines)插件式存储引擎.MySQL的所有逻辑概念,包括SQL ...
- [转]Qt中定时器使用的两种方法
Qt中定时器的使用有两种方法,一种是使用QObject类提供的定时器,还有一种就是使用QTimer类. 其精确度一般依赖于操作系统和硬件,但一般支持20ms.下面将分别介绍两种方法来使用定时器. 方法 ...
- linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用
系统调用:库函数封装了系统调用,通过库函数和系统调用打交道 用户态:低级别执行状态,代码的掌控范围会受到限制. 内核态:高执行级别,代码可移植性特权指令,访问任意物理地址 为什么划分级别:如果全部特权 ...
- Java中HashMap遍历的两种方式
Java中HashMap遍历的两种方式 转]Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种: ...
- jqGrid中实现radiobutton的两种做法
http://blog.sina.com.cn/s/blog_4f925fc30102e27j.html jqGrid中实现radiobutton的两种做法 ------------------- ...
- php获取数组中重复数据的两种方法
分享下php获取数组中重复数据的两种方法. 1,利用php提供的函数,array_unique和array_diff_assoc来实现 <?php function FetchRepeatMem ...
- jQuery中开发插件的两种方式
jQuery中开发插件的两种方式(附Demo) 做web开发的基本上都会用到jQuery,jQuery插件开发两种方式:一种是类扩展的方式开发插件,jQuery添加新的全局函数(jQuery的全局函数 ...
随机推荐
- hdu 5326 Work
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5326 Work Description It’s an interesting experience ...
- PHP(一)
最近一段时间一直忙于新版本的开发工作,所以虽然自己脑中有一些想法,但是苦于没有足够的时间去写下来.好了,昨天终于将大体的功能开发完成,时间上面也不会那么的紧张了.下来我想要好好的梳理一下,自己最近一段 ...
- [转]ASP.NET MVC Spring.NET NHibernate 整合
请注明转载地址:http://www.cnblogs.com/arhat 在整合这三个技术之前,首先得说明一下整合的步骤,俗话说汗要一口一口吃,事要一件一件做.同理这个三个技术也是.那么在整合之前,需 ...
- [转]Ubuntu中root用户和user用户的相互切换
[转]Ubuntu中root用户和user用户的相互切换 http://www.cnblogs.com/weiweiqiao99/archive/2010/11/10/1873761.html Ubu ...
- 关于sqlserver身份登录失败的解决方法
前几天写程序需要用到数据库,下载了一个用用,出现了不少的小问题(都怪我的32bit不争气的笔记本),有问题不要怕,至少证明我们在思考解决方案.废话不说了,直接上正题. Sqlserver有两种登陆方式 ...
- Kinect帮助文档翻译之一 入门
最近在玩Kinect,使用的是Unity,发现网上好像没有什么教程.自己就只有抱着英文版帮助文档啃,真是苦逼 本人英语也不好,大家将就着看吧 Kinect入门帮助 如何运行示例 1 下载并 ...
- iOS UIView的简单渐变效果
这里主要用到了ios4.0以后 UIView的类方法 animateWithDuration: 函数原型包括以下类方法 + (void)animateWithDuration:(NSTimeInter ...
- objective-c自学总结(三)---面向对象的封装,继承与多态
面向对象的三大特性 封装 继承 多态 1.封装: 隐藏属性,方法或实现细节的过程称为封装 信息隐藏,隐藏对象的实现细节,不允许用户看到 将东西包装在一 然后以新的完整形式呈现出来 例如,两种或多种化学 ...
- DES,3DES,AES这三种对称密钥的区别与联系
DES:Data Encryption Standard(数据加密标准,又美国国密局,选中的IBM的方案,密钥长度为56,标准提出是要使用64位长的密钥,但是实际中DES算法只用了64位中的56位密钥 ...
- Think in java备忘录
1..new在内部类中的使用 .new可以用使用外部类对象创建一个内部类,对象 DotNew.java package com.gxf.innerclass; public class DotNew ...