|
为什么要定制表格?
表格在很多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中自定义表格,转载需保留来源!
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。