public static LoadStringEntryLayout ( Android.Content.Context context, Android.Views.View convertView, Android.Views.ViewGroup parent, int layoutId, Android.Widget.TextView &label, EditText &value ) : Android.Views.View | ||
context | Android.Content.Context | |
convertView | Android.Views.View | |
parent | Android.Views.ViewGroup | |
layoutId | int | |
label | Android.Widget.TextView | |
value | EditText | |
Результат | Android.Views.View |
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) { // Warning! Crazy ass hack ahead! // since we can't know when out convertedView was was swapped from inside us, we store the // old textwatcher in the tag element so it can be removed!!!! (barf, rech, yucky!) if (_entry.Tag != null) { _entry.RemoveTextChangedListener((ITextWatcher)_entry.Tag); } _entry.Text = this.Value; _entry.Hint = this.Hint; //_entry.EditorAction += new EventHandler<TextView.EditorActionEventArgs>(_entry_EditorAction); _entry.ImeOptions = ImeAction.Unspecified; if (this.Password) { _entry.InputType = InputTypes.ClassText | InputTypes.TextVariationPassword; } else if (this.Numeric) { _entry.InputType = InputTypes.ClassNumber | InputTypes.NumberFlagDecimal | InputTypes.NumberFlagSigned; } else { _entry.InputType = InputTypes.ClassText; } 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 += new EventHandler <TextView.EditorActionEventArgs>(_entry_EditorAction); } // continuation of crazy ass hack, stash away the listener value so we can look it up later _entry.Tag = this; _entry.AddTextChangedListener(this); if (label == null) { _entry.Hint = Caption; } else { label.Text = Caption; } } return(view); }
protected override View GetViewImpl(Context context, View convertView, ViewGroup parent) { var view = DroidResources.LoadStringEntryLayout(context, convertView, parent, LayoutName); if (view != null) { view.FocusableInTouchMode = false; view.Focusable = false; view.Clickable = false; TextView label; EditText _entry; DroidResources.DecodeStringEntryLayout(context, view, out label, out _entry); _entry.FocusableInTouchMode = true; _entry.Focusable = true; _entry.Clickable = true; var helper = EntryElementHelper.EnsureTagged(_entry); helper.Owner = this; } return(view); }
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) { 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); } 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); if (Send != null) { _entry.EditorAction += _entry_EditorAction; } } _entry.OnFocusChangeListener = this; if (label == null) { _entry.Hint = Caption; } else { label.Text = Caption; } } return(view); }