Xcode 6加了一个新特性,让开发着可以创建自定义控件,并且可以在Interface Builder中显示效果! 程序猿们再也不用猜测自定义控件的样子了!

1 . 创建一个包含自定义视图的框架

创建一个iOS应用程序框架File > New > Target,选择Cocoa Touch Framework
choose_framework_2x

2 . 创建新类

File > New > File选择Cocoa Touch Class模板,选择UIView作为父类,填入类名。
my_custom_class_2x

下一步,保存项目。
custom_class_for_custom_framework_2x

3 . 在Xcode的工程导航栏中选择刚才创建的MyDrawFrameRectViewClass头文件,使它的内容变为:
#import <UIKit/UIKit.h>IB_DESIGNABLE@interface MyDrawFrameRectViewClass : UIView@end
4 . 选择Storyboard文件,在Interface Builder中打开它。
5 . 从控件栏中拖入一个控件到画布上。
6 . 选择刚才拖入的视图,选择属性探测器View > Utilities > Show Identity Inspector
7 . 输入刚才自定义的类名。

overriding_with_custom_class_2x

8 . View > Assistan Editor > Show Assistant Editor打开辅助编辑器。
9 . 在自定义视图中编写代码,我们可以实时的在Interface Builder中看到效果。

live_rendering_red_rect_2x
修改代码:
live_rendering_green_rect_2x

10 . 通过增加辅助编辑器,可以同时查看自定义类的实现和头文件View > Assistant Editor > Add Assistant Editor

assistants_with_canvas_2x

11 . 使用IBInspectable声明的属性可以在属性探测器中出现。

inspectable_properties_2x

12 . 选中Interface Builder中刚才的自定义视图,显示属性View > Utilities > Show Attributes,可以看到刚才定义的两个属性。

inspectable_values_2x

13 . 改变属性值,Interface Builder会自动变化。

modified_inspected_values_2x

下面这些类型的属性可以用IBInspectable修饰:
boolean, integer, float, localized string, rectangle, point, size, color, range, nil等。


长沙戴维营教育,做最好的iOS开发培训!

Swift开发视频教程地址:http://www.ubuntucollege.cn

首家长沙iOS培训机构,湖南地区最诚实iOS开发培训中心!