public override View GetView(Context context, View convertView, ViewGroup parent)
{
TextView label;
var view = DroidResources.LoadStringEntryLayout(context, convertView, parent, LayoutId, out label, out _entry);
if (view != null && _entry != null)
{
view.FocusableInTouchMode = false;
view.Focusable = false;
view.Clickable = false;
_entry.FocusableInTouchMode = true;
_entry.Focusable = true;
_entry.Clickable = true;
_entry.Text = Value;
_entry.Hint = Hint;
_entry.InputType = KeyboardType.InputTypesFromUIKeyboardType();
if (Password)
_entry.InputType |= InputTypes.TextVariationPassword;
if (Lines > 1)
{
_entry.InputType |= InputTypes.TextFlagMultiLine;
_entry.SetLines(Lines);
}
else if (Send != null)
{
_entry.ImeOptions = ImeAction.Go;
_entry.SetImeActionLabel("Go", ImeAction.Go);
_entry.EditorAction -= _entry_EditorAction;
_entry.EditorAction += _entry_EditorAction;
}
else _entry.ImeOptions = ReturnKeyType.ImeActionFromUIReturnKeyType();
if (_entry.Tag == null)
{
_entry.Tag = this;
_entry.AddTextChangedListener(this);
}
else if (_entry.Tag != this)
{
_entry.RemoveTextChangedListener((ITextWatcher)_entry.Tag);
_entry.AddTextChangedListener(this);
}
_entry.OnFocusChangeListener = this;
if (label == null)
{
_entry.Hint = Caption;
}
else
{
label.Text = Caption;
}
}
return view;
}