public override AndroidView GetDropDownView(int position, AndroidView convertView, AndroidViewGroup parent) { if (DropDownViewFactory == null) { return(convertView); } var listItemContext = new ListItemContext <T>() { Position = position, View = convertView, Parent = parent, Adapter = this, DataSource = _list }; DropDownViewFactory(listItemContext); return(listItemContext.Result); }
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath) { TableView = tableView; if (ViewFactory != null) { var listItemContext = new ListItemContext <T> { IndexPath = indexPath, Parent = tableView, Adapter = this, DataSource = DataSource }; ViewFactory(listItemContext); return(listItemContext.Result); } else { var id = ItemViewType(indexPath.Row); var cellId = id.ToString(); return(tableView.DequeueReusableCell(cellId, indexPath) ?? new UITableViewCell(UITableViewCellStyle.Default, cellId)); } }