Interface Builder中的技巧
在我工作中经常会遇到有人吐槽Xcode中的interface builder(以下简称IB)不好用的开发者。在我看来,IB是一个非常棒的可视化开发工具,可以非常快捷的设置UI控件的大部分常用属性。下面就说两个IB中的技巧:
1.快速显示元素相对位置
这个技巧由@余书懿在新浪微博分享。
在IB中,选中一个control A,然后按住alt键,鼠标指向B,就显示A和B的相对位置关系,指向父view也行。

2.给页面添加水平、垂直辅助线
这个技巧是由我一个好朋友,同时也是陌陌的产品经理发现的。
IB中是可以添加水平和垂直的辅助线的。并且辅助线是可以拖动、重复添加和删除的。
水平辅助线的快捷键是:Command + Shift + -
垂直辅助线的快捷键是:Command + Shift + |
当然,也可以通过菜单命令来生成,位置在Editor菜单下,如下图:

辅助线的生成位置是由当前选定的view的中心点决定的,也就是说,如果当前选定了根view,那么将生成根view的辅助线;如果选中的是某一个UI控件,那就以这个控件的中心点生成。 (注意下图的UILabel & UIButton)

有了辅助线就可以轻松根据辅助线对齐控件(辅助线可以吸附),拖动辅助线可以查看辅助线把视图分割的两部分大小。

至于删除辅助线嘛,就是把辅助线在其方向上移出视图边界,你会听到嗖地一声同时会看到一个丢纸团的动画,那就表明删除辅助线成功了。
小结:从我自身来讲,一开始做iOS开发也不是很爱用IB这个东西,感觉调整起来非常别扭。但是随着我做开发时间的变长,我越来越觉得IB非常好使,非常直观与节省时间。之前在《程序员》上看过一位计算机博士写的连载文章:《Mac OS X 背后的故事》,其中有一个章节是讲Interface Builder的,了解了IB的来龙去脉,才知道IB是乔帮主极力推崇的好东西。在我看来,IB才是Xcode这个IDE与众不同和精华所在,不会使用IB的iOS开发者不能算是真正iOS开发者,因为他从没有真正走进乔帮主的内心世界!
以上只是本人一家之言,各位看看了解一下就可以了,习惯这个东西不是那么容易改的。
Interface Builder中的技巧的更多相关文章
- 浅析 - 提高xib(Interface Builder)高效工作的几个小技巧
本文译自:8 Tips for working effectively with Interface Builder(需FQ)先来看看目录:介绍使view的Size与view中的Content相适应按 ...
- 提高Interface Builder高效工作的8个技巧
本文转载至 http://www.cocoachina.com/ios/20141106/10151.html iOS开发Interface Builder 本文译自:8 Tips for worki ...
- iOS开发工具Xcode:Interface Builder
简介: Interface Builder(IB)是Mac OS X平台下用于设计和测试用户界面(GUI)的应用程序(非开源).为了生成GUI,IB并不是必需的,实际上Mac OS X下所有的用户界面 ...
- iOS开发-Interface Builder的前世今生
Interface Builder,是用于苹果公司Mac OS X操作系统的软件开发程序,Xcode套件的一部分,于1988年创立.它的创造者Jean-Marie Hullot自称是“一个热爱旅行.充 ...
- IOS 使用Interface Builder开发界面入门与技巧
引言: 通过Interface Builder(简称IB)来制作界面一直是iOS开发界饱受争议的方式.主要争议的话题是不太适合团队协作开发,再就是对IB的使用比较生疏,觉得IB只能完成一些很简单的功能 ...
- 【Xamarin挖墙脚系列:代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧(转)】
正愁如何选择构建项目中的视图呢,现在官方推荐画板 Storybord...但是好像 xib貌似更胜一筹.以前的老棒子总喜欢装吊,用代码写....用代码堆一个HTML页面不知道你们尝试过没有.等页面做出 ...
- 代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧
近期接触了几个刚入门的iOS学习者,他们之中存在一个普遍和困惑和疑问.就是应该怎样制作UI界面.iOS应用是非常重视用户体验的,能够说绝大多数的应用成功与否与交互设计以及UI是否美丽易用有着非常大的关 ...
- ***Xcode Interface Builder或Storyboard中可建立那两种连接?
在Xcode Interface Builder或Storyboard中,可建立到输出口(IBOutlet)和操作(方法,IBAction)的连接. IBOutlet are for output C ...
- iPhone开发中的技巧整理
1.NSCalendar用法 -(NSString *) getWeek:(NSDate *)d { NSCalendar *calendar = [[NSCalendar alloc] initWi ...
随机推荐
- 将系统从.Net Core2.0升级到.Net Core2.1
最近将手头的一个.Net Core2.0开发的小系统升级到最新的Core2.1.升级期间遇到了一些问题,现将问题以及解决方法整理汇总一下. 一是作为笔记,二也为跟各位分享一下.如过能帮到看到这帖子的人 ...
- python面试题解析(网络编程与并发)
1.答: 应用层 与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的.例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层.但是,如果添加了一 ...
- 01_Java 软、弱引用语法介绍
文章导读: 从JDK1.2版本开始,把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期.这四种级别由高到低依次为:强引用.软引用.弱引用和虚引用, 本章内容介绍了Reference的概 ...
- Python学习-day7 类 部分socket
这周还是继续关于类的学习,在面向对象的学习过程中又学习了网络编程,并且提交了编写FTP的作业. 复习一下类的相关概念和定义 类 属性 实例变量:内存中 ...
- Collection类及常用API
Collection类及常用API Collection—类集工具类,定义了若干用于类集和映射的算法,这些算法被定义为静态方法,具体查看api文档; a) public static void so ...
- Android金额输入EditText共通方法
代码改变世界 EditText输入框实现最多到小数点后两位(金额显示) package com.lianpos.util; import android.text.Editable; import a ...
- 硅谷和国内的 iOS 开发到底有何不同?
前段时间在国内各大互联网公司转了一圈.与各位 iOS 业界大佬交流了之后,深感国内变化之大,敬佩诸位国内开发者的实力和韧劲.除此之外,我还发现硅谷和国内的 iOS 开发还是差别很大,且听我慢慢道来. ...
- 【Luogu】P3574FAR_FarmCraft(树形贪心)
题解链接 想了一个错的贪心爆零了,气死. 题目链接 #include<cstdio> #include<cctype> #include<cstring> #inc ...
- Codeforces 903F Clear the Matrix
题目大意 考虑一个 $4$ 行 $n$ ($4\le n\le 1000$)列的矩阵 $f$,$f$ 中的元素为 * 或 . . 对 $f$ 进行若干次如下变换: 将一个 $k\times k$($1 ...
- [luoguP2766] 最长递增子序列问题(最大流)
传送门 题解来自网络流24题: [问题分析] 第一问时LIS,动态规划求解,第二问和第三问用网络最大流解决. [建模方法] 首先动态规划求出F[i],表示以第i位为开头的最长上升序列的长度,求出最长上 ...