private bool ShouldReturn(UITextField textField) { if (textField.ReturnKeyType == UIReturnKeyType.Done) { // we are done, hide the keyboard View.EndEditing(true); // nothing else to edit, why not just saving the form? Save(); return(false); } var nextTag = textField.Tag + 1; UIResponder nextControl = _contentView.ViewWithTag(nextTag); if (nextControl != null) { // set focus on the next control nextControl.BecomeFirstResponder(); } else { // Not found, hide keyboard. View.EndEditing(true); } return(false); }
protected bool TextFieldShouldReturn(UITextField textField) { var nextTag = textField.Tag + 1; UIResponder nextResponder = this.View.ViewWithTag(nextTag); if (nextResponder != null) { nextResponder.BecomeFirstResponder(); } else { textField.ResignFirstResponder(); } return(false); }
private static UIView CreateToolbar(CGRect frame, string buttonTitle, UIResponder next, Action onEnter) { var toolbar = new UIToolbar(new CGRect(0, 0, frame.Size.Width, 50)); var button = new UIBarButtonItem(buttonTitle, UIBarButtonItemStyle.Plain, (_, _) => { next?.BecomeFirstResponder(); onEnter?.Invoke(); }); toolbar.Items = new[] { new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace), button }; toolbar.SizeToFit(); return(toolbar); }
/// <summary> /// Selects next TextField to become FirstResponder. /// Usage: textField.ShouldReturn += TextFieldShouldReturn; /// </summary> /// <returns></returns> /// <param name="textField">The TextField</param> public bool TextFieldShouldReturn(UITextField textField) { var nextTag = textField.Tag + 1; UIResponder nextResponder = this.View.ViewWithTag(nextTag); if (nextResponder != null) { nextResponder.BecomeFirstResponder(); } else { // Not found, so remove keyboard. textField.ResignFirstResponder(); } return(false); // We do not want UITextField to insert line-breaks. }
/* * Handler for moving through TextFields and hiding the keyboard * */ private bool TextFieldShouldReturn(UITextField textField) { nint nextTag = textField.Tag + 1; UIResponder nextResponder = this.View.ViewWithTag(nextTag); if (nextResponder != null) { nextResponder.BecomeFirstResponder(); } else { // Not found, so remove keyboard. textField.ResignFirstResponder(); } return(false); }
private bool TextFieldShouldReturn(UITextField textfield) { int nextTag = (int)textfield.Tag + 1; UIResponder nextResponder = this.View.ViewWithTag(nextTag); if (nextResponder != null) { nextResponder.BecomeFirstResponder(); AutoCompleteTextFieldManager.RemoveTable(); } else { // Not found, so remove keyboard. textfield.ResignFirstResponder(); } return(false); // We do not want UITextField to insert line-breaks. }
/// <summary> /// Implements the behaviour of the return button /// </summary> /// <returns>Always <c>false</c>, because we do not want a line break</returns> /// <param name="textfield">Textfield.</param> bool TextFieldShouldReturn(UITextField textfield) { int nextTag = (int)textfield.Tag + 1; UIResponder nextResponder = View.ViewWithTag(nextTag); if (nextResponder != null) { nextResponder.BecomeFirstResponder(); } else { // Remove keyboard, then connect textfield.ResignFirstResponder(); if (ShouldPerformSegue(strings.serverConnectToDevicesSegue, this)) { PerformSegue(strings.serverConnectToDevicesSegue, this); } } return(false); }
private bool textFieldShouldReturn(UITextField txt) { if (txt.Tag <= 0) { txt.ResignFirstResponder(); return(false); } nint nextTag = txt.Tag + 1; UIResponder nextResponder = controller.View.ViewWithTag(nextTag); if (nextResponder != null) { nextResponder.BecomeFirstResponder(); } else { txt.ResignFirstResponder(); } return(false); }