iOS之MAC端开发iOS Developer

Swift3.0 开发macOS应用程序(4) NSArrayC

2016-12-01  本文已影响255人  MNode

NSArrayController

is a bindings compatible class that manages a collection of objects. Typically the collection is an array, however, if the controller manages a relationship of a managed object (see NSManagedObject
) the collection may be a set. NSArrayController
provides selection management and sorting capabilities.

官方介绍:NSArrayController


在StoryBoard中通过Create Document-Based Application 搭配ArrayController对象,使操作NSTableView非常简单,一行代码都不用写便可以实现增加、删除、插入等功能。
下面我将通过一个实例演示NSArrayController强大的功能。

1.创建工程

勾选Create Document-Based Application,如下图:

1.png

进入新建的项目会,会发现多了一个Document.swift文件,这正是勾选Document-Based所创建的文件。里面内容大致如下图:

2.png

打开Main.StoryBoard,会发现视图控制器中多了一行文字:“Your document contents here”,删除这行文字简介。

3.png
2.创建模型Person

如下图:

5.png

Person.swift中,添加如下代码:

6.png

然后进入Document.swift文件中,添加一行代码:

7.png
3.打开StoryBoard

在视图控制器中拖入控件,一个NSTableView,二个NSButton,如下图,并双击修改NSTableView 每个column的标题:

4.png
4.拖入ArrayController对象到视图控制器中

设置Class Name,项目名+模型名,也就是所要模型的路径。如下图所示:

9.gif
5.添加NSObject对象到视图控制器中

如下图:

10.gif

并设置好类名,也就是Document

6.设置ArrayController所绑定的数据源
11.gif
7.绑定NSTableView的数据源
12.gif
8.绑定Table View Cell的数据源
13.gif
9.为Add和Remove按钮添加ArrayController中增加和删除功能
14.gif

10.运行程序
如下图所示:

15.gif

源码-->:github

上一篇下一篇

猜你喜欢

热点阅读