BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 Jonathan Allen 关注 595 他的粉丝 ,译者 曹如进 关注 0 他的粉丝 发布于 2012年3月29日. 估计阅读时间: 2 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

当你使用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

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT