【发布时间】:2016-05-24 19:58:31
【问题描述】:
我正在尝试使用自定义 UITableViewCell。我能够让单元格实例化,使其不为空。但是,单元格中的所有 UILabel 出口都为空。因此,我得到一个空指针异常。
这类似于iOS custom TableViewCell class subviews return null 和Label in custom cell is null when populating UITableViewController。然而,这两种解决方案都没有解决我的问题。他们建议确保标识符匹配,它确实如此。他们还告诉我注册单元格以供重复使用,我也这样做了。
我已确保单元格的 Xib 文件中的标识符与我正在使用的标识符相匹配。
在我的源类中:
public override UITableViewCell GetCell (UITableView tableView, NSIndexPath indexPath)
{
tableView.RegisterClassForCellReuse(typeof(BoardListCell), new NSString(BoardListCell.Key));
var cell = (BoardListCell) tableView.DequeueReusableCell(BoardListCell.Key);
if (cell == null)
{
var nib = UINib.FromName(BoardListCell.Key, NSBundle.MainBundle);
cell = (BoardListCell)nib.Instantiate (null, null) [0];
}
cell.setData("top", "not top"); //Sample data
return cell;
}
在我的 BoardListCell 类中:
public partial class BoardListCell : UITableViewCell
{
public static readonly UINib Nib = UINib.FromName ("BoardListCell", NSBundle.MainBundle);
public static readonly NSString Key = new NSString ("BoardListCell");
public BoardListCell() : base()
{
}
public BoardListCell (IntPtr handle) : base (handle)
{
}
public void setData(String top, String bottom)
{
exp.Text = top;
playTime.Text = bottom;
}
}
当我调试时,正在创建单元格。但是,它的出口是空的。如果我在构造函数中实例化它们,我不会得到错误,但这显然违背了在 xcode 中制作原型的目的,因为它会消除布局等。
【问题讨论】:
-
我也遇到了同样的问题,你能解决吗?
-
仍然没有答案?
标签: ios uitableview xamarin xamarin.ios