|
為什么要定制表格?
表格在很多iPhone應用程序中都是必需的UI元素。雖然對于應用程序開發而言,這并非是一項新發明,鑒于設備尺寸等方面的限制,表格在iPhone中的功能是非常固定的。
蘋果在其SDK中,直接內置了很多風格來讓你定制表格。不過,在你最初創建表格的時候,它看起來非常簡單。在沒有進行任何定制的時候,你可以為表格選擇兩種基本風格,默認風格和分組風格:
在對表格中的單元格進行一點調整后,你就可以添加圖標和說明文字:
你甚至能改變單元格的字體和顏色,然而,有時候這樣還是不足夠。如果你真的想完全改變基本的風格,創建一個復雜的UI,那么你必須創建自己的自定義單元格控件。下面的截圖是定制后的效果,這個應用程序使用完全定制的單元格來顯示內容:
幸好,蘋果讓我們有便捷的方法來完成這樣的定制,就是允許我們創建自己的定制UITableViewCell 控件,并把其用于UITableView 控件中。下面,讓我們來逐步創建一個應用程序,學習如何利用UITableView 和UITableViewCell 控件來創建上圖所示效果的例子。
示例應用程序
那么接下來,我們就來創建應用程序。首先,打開MonoDevelop,如下圖所示:
接著,新建一個iPhone MonoTouch項目。從;File菜單中,選擇;New Soluton:
從C# iPhone 模板中選擇;iPhone Window-based Project,輸入解決方案的名稱;Example_CustomUITableViewCells:
在項目特性對話框上點擊;OK,這些內容和我們要做的應用程序無關:
我們的項目現在創建好了,如下圖所示:
通過在Solution Explorer窗口里雙擊MainWindow.xib,以便在Interface Builder中打開它,之后你會看到如下內容:
我們首先拖一個UITableView控件到我們的MainWindow中,效果如下:
我們需要在AppDelegate類中添加一個outlet,以便我們能編程訪問這個Table View。
在Library窗口中,選擇頂部的;Classes標簽頁,接著在下拉列表中選擇;Other Classes。確保AppDelegate已經選中,在Library窗口的下半部點擊;Outlets標簽頁:
讓我們來創建一個名為;tblMain的outlet,通過點擊;+按鈕,在名稱列輸入;tblMain,你的outlet應該類似下圖的:
接著,把outlet關聯到我們之前添加的UITableView上。在Document窗口中選擇AppDelegate,在Connections Inspector窗口中,就會看到新創建的tblMain outlet:
從連接管理器中把右側的outlet的圓點拖動到Document窗口或Window Designer的表格上,就可以把它們關聯到一起:
現在,我們得到了一個關聯過的表格,讓我們回到MonoDevelop,編寫一些代碼。
在項目上按右鍵,在上下文菜單中選擇;Add,接著選擇;New Folder,把文件夾命名為;Code;。
接著創建一個命名為;BasicTableViewItem.cs的類。即,在項目上再次按右鍵,在上下文菜單中選擇;Add,接著選擇;New File。命名類,并點擊;New:
在這個代碼文件中,輸入如下代碼:
namespace Example_CustomUITableViewCells
{
//==================================
/// <summary>
/// Represents our item in the table
/// </summary>
public class BasicTableViewItem
{
public string Name { get; set; }
public string SubHeading { get; set; }
public string ImageName { get; set; }
public BasicTableViewItem ()
{
}
}
//====================================
}
it知識庫:在MonoTouch中自定義表格,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。