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 ...
随机推荐
- 关于sizeof,对空指针sizeof(*p)可以吗?
C/C++的sizeof在动态分配内存时经常用到,但之前一直没怎么关注它的具体机制.今天在为一个复杂声明的指针分配内存时,想起来要了解一下sizeof到底是什么? 先抛个问题: 程序运行过程中对空指针 ...
- Spring MVC+Mybatis 多数据源配置及发现的几个问题
1.CustomerContextHolder 数据源管理类,负责管理当前的多个数据源,基于ThreadLocal实现,对每个线程设置不同的目标数据源 public class CustomerCon ...
- jnative 使用
下载地址: JNative_1.4RC2_src.zip : http://jaist.dl.sourceforge.net/sourceforge/jnative/JNative_1.4RC2_sr ...
- 【Alpha】Scrum Meeting 5-end
第一天:2019/6/19 前言: 第5次会议在6月19日由PM在教9C-501召开. 总结项目,进行单元测试并进行简单的整合.时长60min. 团队GitHub仓库 仓库连接 1.1 今日完成任务情 ...
- 03008_ServletContext
1.什么是ServletContext? (1)ServletContext代表是一个web应用的环境(上下文)对象,ServletContext对象 内部封装是该web应用的信息,Servle ...
- IDEA字体颜色快速导入辅助工具设置
原创链接:https://www.cnblogs.com/ka-bu-qi-nuo/p/9181954.html 程序员开发大多数都是使用IDE进行代码开发的,这样能快速的开发出需要的项目.之前一直 ...
- const用法归纳总结 C++
非常好的一篇分析const的总结归纳, 在此谢谢原作者:http://blog.csdn.net/zcf1002797280/article/details/7816977 在普通的非 const成员 ...
- python3 保存一个网页为html文件
我使用的python版本为3.5.2. 最近租房子,恨透了中介,想绕过中介去租.结果发现豆瓣同城里有好多二房东,感觉人都还不错.但是豆瓣这里没有信息检索的功能,只能人工地看房子的地址,非常地不方便.所 ...
- 设计模式(二 & 三)工厂模式:概述
工厂 从 coding 的角度来说,在需要创建对象的时候,直接在方法内部使用 new 关键字来创建,是非常方便的. 然而从全局的角度考虑,这样会使对象变得难以管理和控制,代码会变得非常脆弱,缺乏弹性. ...
- UISearchController,SearchBar的教程-Swift
如果你的应用程序里显示了大量的数据,滚动的查看大规模的列表会很慢,也会给人一种烦躁的感觉.在这种情况下,查询UISearchController, UISearchBar是极其重要的,可以让用户搜索特 ...