What I suggest it's to create a list of textfields, so define the list some where in the code and init in the constructor
public List<UITextField> YourTextFields = new List<UITextField>();
public YouTableViewSourceConstructor()
{
foreach(var elementItem in elements.Where(e => e.Type == "textField").ToList())
{
YourTextFields.Add(new UITextField(){Tag = 99});
}
}
then in the GetCell method
public override UITableViewCell GetCell (UITableView tableView, NSIndexPath indexPath)
{
//some your code
if(cell.ViewWithTag (99) != null)
{
cell.RemoveSubview(cell.ViewWithTag (99));
}
var textField = YourTextFields [elements.Where(e => e.Type == "textField").ToList().IndexOf(elements [indexPath.Row])];
cell.AddSubview (textField);
//some your code
}
So in the YourTextFields you will have all your 4 textfields and your can easily access to them