Home Report App 学习笔记:Complex Search and Aggregate Functions

源自 NEW- CoreData for Swift Development (Swift 4.2 & iOS 12)

Entity Inheritance

Home 包含了公寓或独栋的基础属性,比如所属城市、销售价格、面积等,而 CondoSingleFamily 有其各自独立的属性,比如公寓有其所在的建筑物的数量(多少个公寓)。因此需要用到继承关系,设置 Parent Entity 属性为 Home 即可。

Table View 用于设置过滤界面

因为过滤条件是固定的五个,依据类型可以分为两类,所以在此 App 中使用了 TableView 作为控件展示过滤条件,TableView 有两个 Section,第一个 Section 有三个过滤条件,第二个 Section 有两个过滤条件。

设置每个 Cell 的 Outlet,方便在 didSelectRowAt 时判断是哪个 Cell。

获取指定数据的套路

简单地说,就是构造一个请求(NSFetchRequest),为这个请求设置一些过滤条件(NSPredicate)和排序方法(NSSortDescriptor),启动该请求获取所需数据。具体实现时,可以参考现有代码。

函数实现的位置

若想实现一个获取所有已经销售(过滤条件:NSPredicate)的房屋(Home Entity)的总价格的函数,该函数既可以放在 Home 类定义里面,也可以新建文件,放到 extension Home { } 里面。

字符串比较

Advertisements

分类:iOS

Tagged as:

发表评论

Fill in your details below or click an icon to log in:

WordPress.com 徽标

You are commenting using your WordPress.com account. Log Out /  更改 )

Google photo

You are commenting using your Google account. Log Out /  更改 )

Twitter picture

You are commenting using your Twitter account. Log Out /  更改 )

Facebook photo

You are commenting using your Facebook account. Log Out /  更改 )

Connecting to %s

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理