使用MonoTouch.SQLite簡化用戶界面開發
當你使用 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