【问题标题】:UITextField selectAll and no menu after tap on another uitextfieldUITextField selectAll,点击另一个uitextfield后没有菜单
【发布时间】:2011-08-09 15:19:30
【问题描述】:

我有一些 UITextField,当用户点击它时,我选择了所有文本并且菜单被隐藏,但如果他们不做任何更改,当他们点击另一个 UITextField 时,菜单剪切、复制、替换出现在当前的 UITextfield 上,而不是点击的 UITextfield 中。

我可以在 selectAll 之后第一次隐藏菜单,但不能在用户点击另一个 UITextfield 时隐藏。

有什么想法吗?

谢谢,

- (void)textFieldDidBeginEditing:(UITextField *)textField {

   [textField selectAll:textField];
   [UIMenuController sharedMenuController].menuVisible = NO;

}

【问题讨论】:

    标签: iphone ios uitextfield


    【解决方案1】:

    您是否为其他文本字段设置了委托?

    示例:myTextField.delegate = self;

    【讨论】:

      【解决方案2】:

      委托方法中的textField 变量在触摸时应该是第二个UITextField。您可以使用标签识别您的UITextFields。因此:

      #define kSecondTextFieldTag 300
      // ....
      
      -(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
          if (textField.tag == kSecondTextFieldTag) {
              [UIMenuController sharedMenuController].menuVisible = NO;
          }
          return NO;
      }
      

      是的,请确保按照之前的建议设置代理。

      【讨论】:

      • 在我的情况下,我想总是隐藏它,所以我有这个代码 [UIMenuController sharedMenuController].menuVisible = NO;始终执行,无论哪个字段开始编辑,所以我不明白你的提议,抱歉
      猜你喜欢
      • 2012-03-11
      • 2017-10-27
      • 2013-09-23
      • 1970-01-01
      • 2014-06-14
      • 1970-01-01
      • 2019-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多