写点什么

使用 MonoTouch.SQLite 简化用户界面开发

  • 2012-03-28
  • 本文字数:718 字

    阅读完需:约 2 分钟

当你使用 iOS 和 MonoTouch 时,可能需要显示一个 SQLite 表中的数据。虽然你可以通过构建 UITableViewController 来完成数据显示,但是整个过程相当耗时,并且需要相当多的样板代码。Jeffrey Stedfast 找到了一种方法,通过借助 MonoTouch.SQLite 可以将简单的表格绑定减少为一个单个方法。

MonoTouch.SQLite 是一个数据库感知的 UI 库,旨在简化表格数据显示。 SQLiteTableModel 模型类是 MonoTouch.SQLite 的底层基础。该模型提供了现成的带有排序和过滤的基础表格访问,因此当使用它显示简单数据时,你不需要做任何操作。但如果需要使用复杂的 SQL 语句,你可以实现它的子类并重写其中的 SQL 生成方法。

套件(stack)的下一个部分是控制器本身。对于那些还不是 iOS 开发人员的用户,需要知道 Apple 的 UI 库必须严格遵循经典的 MVC 模式。这意味着类似表格的视图需要继承自 UITableViewController 类。MonoTouch.SQLite 通过其子类 SQLiteTableViewController 处理了大部分细节。在示例程序中,你会看到只要实现GetCell 方法即可。

终端用户查找

为了让终端用户更轻松地查找信息,MonoTouch.SQLite 可将用户输入的字符串转换为自定义的SQL where 子句。要做到这一点,用户只要简单地使用特性SQLiteSearchAlias 标记它们的数据模型属性。同一个别名(alias)可使用多次,例如FirstName 和LastName 都可能被标记为别名”name”,而后当用户输入address:“Newton, MA” name:Jane’时,MonoTouch.SQLite 会生成一个where 子句,并在address 列和name 列中查找匹配。

此外,iOS UISearchDisplayController 包装了前面提及的 UITableViewController,使用它可以完成所有的这些工作。

查看英文原文: Simplified UI Development with MonoTouch.SQLite

2012-03-28 07:111968
用户头像

发布了 125 篇内容, 共 38.5 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

常见的网路设备和网络参考模型,以及常见的网络层协议及数据通信过程

Python-派大星

10月月更

有奖测评 | 今天种下{1},明天就会收获一片{11.11}——程序员日暨11.11狂欢季来啦

京东科技开发者

云主机 测评 双十一 京东云 程序员日

2022年第六届数据质量管理国际峰会重磅开启

数据质量管理智库

数据 数据隐私 数据安全 峰会 数据质量

Java中的super和this关键字详解

共饮一杯无

Java 10月月更 super和this关键字

三次握手与四次挥的问题,怎么回答?

loveX001

JavaScript

vue这些原理你都知道吗?(面试版)

bb_xiaxia1998

Vue

【kafka运维】Topic的生产和消费运维脚本

石臻臻的杂货铺

kafka kafka运维 10月月更

7 步保障 Kubernetes 集群安全

SEAL安全

Kubernetes 云原生 Kubernetes 集群 企业号十月 PK 榜 审计日志

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

阿里前端二面高频react面试题

beifeng1996

React

React源码分析4-深度理解diff算法

goClient1992

React

HummerRisk V0.4.1发布:新增依赖文件检测功能,优化 AWS 检测规则组,优化资源态势等内容

HummerCloud

云计算 云安全 云原生安全 10月月更 安全合规

输入到页面展现到底发生什么?

loveX001

JavaScript

软件测试 | 测试开发 | 测试开发工程师必读经典好书清单,抽奖赠书送福利!

测吧(北京)科技有限公司

测试

MASA Framework 缓存入门与设计

MASA技术团队

.net MASA Framewrok MASA

即时通讯技术文集(第3期):高性能网络编程系列 [共14篇]

JackJiang

网络编程 即时通讯IM

以指标驱动业务决策,Kyligence 亮相 Gartner IT Symposium/Xpo™ 峰会

Kyligence

数据分析 指标中台 OLAP技术

直面数字化挑战,戴尔PowerEdge R750最全面的通用服务器

科技热闻

DOM,Diff算法与Key机制

beifeng1996

React

react的jsx和React.createElement是什么关系?面试常问

beifeng1996

React

openGemini内核源码正式对外开源

华为云开发者联盟

数据库 物联网 华为云 企业号十月 PK 榜

Go语言入门—06切片

良猿

Go golang 后端 10月月更

前端经典面试题合集

loveX001

JavaScript

软件测试 | 测试开发 | 校招面试真题 | 显式等待与隐式等待的区别?与强制等待的方式分别是什么,有什么区别?

测吧(北京)科技有限公司

测试 测试开发

Python列表和元组有什么区别

芥末拌个饭吧

后端 python 3.5+ 10月月更

数通路由交换之网络基础(一)

Python-派大星

10月月更

计算机网络 ,什么是Internet?什么是协议?TCP/UDP的区别以及优缺点 分组交换与电路交换的区别以及优缺点

Python-派大星

10月月更

软件测试 | 测试开发工程师必读经典好书清单

测试人

软件测试 测试开发 测试工程师 测试书籍

全彩LED显示屏近年来在中国的发展趋势

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

Vue的开发模式与webpack🔥

渔戈

前端 Vue3 10月月更

《Go语言学习路线图》让你少踩坑,高效学,Let’s Go!

王中阳Go

golang 学习方法 技术专题合集 10月月更 “程”风破浪的开发者

使用MonoTouch.SQLite简化用户界面开发_语言 & 开发_Jonathan Allen_InfoQ精选文章