如何在文本字段中显示文本时更改键盘返回类型

时间:2016-03-31 07:11:23

标签: ios keyboard

我有一个文本字段,其键盘返回键为default。 但是,当文本字段中出现任何文本时,我希望它为UIReturnKeySend。 我尝试过如下。

- (BOOL)textField:(UITextField *)textFieldshouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
  {
      textField.returnKeyType = UIReturnKeySend;
      return YES;
  }

我知道我必须检查此方法下的某些条件,但是现在我希望它至少更改不起作用的returnKeyType

正如autoEnabling返回键中所发生的那样(即当我们输入文本时,返回键变为活动状态。)我希望每当文本出现时,我的返回键都会从default更改为send

3 个答案:

答案 0 :(得分:0)

如果您想在动态编辑时更改它,请编写以下代码:

- (BOOL)textField:(UITextField *)textFieldshouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
      textField.returnKeyType = UIReturnKeySend;
      [textField reloadInputViews];
      return YES;
}

答案 1 :(得分:0)

[textField reloadInputViews]似乎可以解决这个问题......

答案 2 :(得分:0)

由于您希望在文本字段中出现任何文本时更改返回键类型,为什么不尝试这样做:

  - (void)textFieldDidBeginEditing:(UITextField *)textField
    {
     if([textField.text length] > 0){
    textField.returnKeyType = UIReturnKeySend;
      }
     else{
    textField.returnKeyType = UIReturnKeyDefault;
      }
    }

希望这会对你有所帮助。