我知道您可以在iOS Designer
中设置样式,但是如何在代码中设置样式?
通常您使用此功能请求单元格
var cell = tableView.DequeueReusableCell (cellIdentifier);
我看到Objective-C解决方案创建了一个新的细胞。在新范例之后,如果您使用RegisterClassForCellReuse
,则无需创建新单元格。
这是在代码中设置样式的唯一方法吗?
if (cell == null) {
cell = new UITableViewCell (UITableViewCellStyle.Subtitle, cellIdentifier);
}
答案 0 :(得分:3)
如果你使用RegisterClassForCellReuse,我认为你必须使用一个子类UITableViewCell的自定义单元格。否则,它会创建一个样式为Default的标准单元格。
以下工作方法是在ViewDidLoad
注册课程:
TableView.RegisterClassForCellReuse(typeof(SubtitleTableViewCell), new NSString("SessionCell"));
并继承UITableViewCell
。 [Export]
属性是必需的:
public class SubtitleTableViewCell : UITableViewCell
{
[Export("initWithStyle:reuseIdentifier:")]
public SubtitleTableViewCell(UITableViewCellStyle style, string cellId)
: base( UITableViewCellStyle.Subtitle, cellId) { }
}