其他分享
首页 > 其他分享> > Interface Builder 学习笔记

Interface Builder 学习笔记

作者:互联网

 

主要窗口:

Project window:存储界面文件内容(即为NIB 工程窗口)

Design window:应用程序的用户界面

Inspector window:查看和编辑界面控件和对象的属性

Library:放置控件的工具箱

Menu editor:增删改应用程序的菜单

NIB (工程)窗口(双击XIB文件)

默认显示有6项:【File's Owner】,【First Responder】,【Font Manage】,【Application】,【MainMenu】,【Window】

显示方式有3种:

以可视化的图标方式列出了的XIB中对象

以树状(竖直列表)形式显示对象信息

以列状(水平列表)形式显示对象信息

Design window(双击NIB窗口中的window图标)

用来显示和添加控件的用户界面,用户可以通过它跟应用程序代码交互

选中一个控件,按着 option 可以显示控件的边距,移动鼠标到别的控件上,可以查看两个控件的距离

Library Window(Tools  ->  Library)

Objects 选项卡显示可用的控件对象

Library由框架组成,Objects  ->  Cocoa 显示Cocoa框架,由以下框架

Cocoa : Windows,Menus,toolbars,contollers,buttons,views,radio groups,image well,sliders,progress indicators and others

Interface Builder Kit : Library 模板 (为高级用户)

Web Kit : Web View

Address Book : Address Book People Picker view

Automator : 用来自动整合应用程序

DiscRecording : 用来烧制唱片的对象

Image Kit : 查看和浏览图片开发包

Open Scripting Kit : 生成应用程序脚本的对象

PDFKit : 显示PDF文档的视图和微型图

QuickTime Kit : 播放电影和视频预览

Quartz Composer : 播放和控制音乐播放

Custom Objects : 用户对象

可以使用具体类名或控件的描述来搜索

Inspector window(Tools  ->  Inspector)

可以修改和设置任何窗体上控件和对象(包括窗体自身)的属性,对于按钮如果显示蓝色闪动,表示默认选中

同时可以通过(Key Equiv.)为按钮设置快捷键

Menu Editor window(双击NIB窗口中的MainMenu图标)

用于设置显示在桌面的菜单

菜单中的文字内容保存在Info.plist文件中,而不在输入的Interface Builder中

 

添加一个Pop-up 菜单 

添加一个Pop-up 按钮

从Tools  ->  Library  中找到 Pop Up Button ,拉到Window上

双击并打开其下拉列表,对各项进行修改,同时可以通过 Edit  ->  Duplicate  添加一个复制品,可修改保项的Tag选项,用来判断程序运行时用户选中项

添加一个菜单

打开 Tools  ->  Library

从中拉出 menu item 到 MainMenu 中,通过属性修改名称等相关内容

从中拉出 menu 到刚添加的menu item上,修改下拉表项

通过属性的 Key Equiv. 添加快截键

添加一个控制类

如果是新建一个窗体还没类,则从Library中拉出NSObject到NIB窗口中,若是对以前有的进行修改,则可以不用添加。

类跟窗体连接

打开NIB窗口,查看刚控制类的 identity 属性

从中添加 outlets 和 actions

在菜单中选中对应操作项, control + 拖动到NIB窗口的控制类 绑定对应的方法(可以多个项绑定同一个方法),并反向绑定outlets ,绑定完可以通过 NIB 窗口中的 connections 属性查看绑定结果

在Xcode中应用Interface

创建类文件并添加到Xcode方法看我前一篇文章

如果类文件已经存在,通过手动编辑或与新文件合并进行修改,改完保存即可

手动编辑要先修改interface文件中的定义,保存后修改对应的implementation文件

保存文件

 

 

 

标签:控件,窗口,NIB,Builder,Library,window,添加,笔记,Interface
来源: https://blog.51cto.com/u_14819979/3024780