当前位置: 首页 > 编程笔记 >

仅几行iOS代码限制TextField输入长度

龙浩博
2023-03-14
本文向大家介绍仅几行iOS代码限制TextField输入长度,包括了仅几行iOS代码限制TextField输入长度的使用技巧和注意事项,需要的朋友参考一下

网上有很多限制textField输入长度方法,但是我觉得都不是很完美,准确来说可以说是不符合实际开发的要求,因此在这里整理一下textField限制输入长度的方法.

 我所采用的并不是监听方法而是最不同的代理实现方法,为什么不使用监听呢???
 当你看到这篇文章很有可能视是为一件事所苦恼那就是使用监听限制输入长度后不能够完美的控制输入内容.

 举一个简单的例子: 

你要限制输入长度为30个字符,当你输入30个字符后监听的确可以很好的控制不让你继续输入,但是问题也随之而来,当你把光标移动到输入内容中间的位置后,你是可以继续输入的这种输入让人很苦恼因为当你输入后你的光标会移动到最后,并且限制你继续输入,但是你刚刚输入的内荣却保留在了文本中间,这很不符合要求.

 因此在这里采用代理可以很好的实现我们想要的效果,仅仅几行代码希望给你带来帮助.

 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
  
  if (textField == self.liveThemeTextField) {
  //这里的if时候为了获取删除操作,如果没有次if会造成当达到字数限制后删除键也不能使用的后果.
    if (range.length == 1 && string.length == 0) {
      return YES;
    }
    //so easy
    else if (self.liveThemeTextField.text.length >= 30) {
      self.liveThemeTextField.text = [textField.text substringToIndex:30];
      return NO;
    }
  }
  return YES;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 问题内容: 我正在尝试创建一个限制用户输入的文本字段。我有这个代码: 它成功限制了输入。但是,当我尝试按键盘上的其他字符时,它将更改文本字段上的最后一个字符。有什么想法可以阻止吗?我知道其他人会说我应该使用Document(不记得了)来制作这种东西,但是我不能。我不知道如何在netbeans中做到这一点。请帮忙。 问题答案: 这是一种简单的方法:

  • 本文向大家介绍TextField和TextView限制输入字数长度,包括了TextField和TextView限制输入字数长度的使用技巧和注意事项,需要的朋友参考一下 TextField和TextView限制输入长度的具体实现方法,供大家参考,具体内容如下 TextField的限制代理方法  只需要在这个代理方法里面code这样的代码就可以了 16 是长度可以自己设置 TextView的限制代理方

  • 本文向大家介绍jQuery 限制输入字符串长度,包括了jQuery 限制输入字符串长度的使用技巧和注意事项,需要的朋友参考一下 我们后台做程序的时候,比如录入一篇文章,文章会有摘要,我们希望文章的字符长度是我们可以控制的,我们不希望它太长,比如限制只能输入250个字符,下面的代码实现了这种功能。 先来看一下效果图 代码如下: 以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持呐喊教程

  • 本文向大家介绍iOS输入框的字数统计/最大长度限制详解,包括了iOS输入框的字数统计/最大长度限制详解的使用技巧和注意事项,需要的朋友参考一下 前言 前两周我们发了一个小集「iOS 自带九宫格拼音键盘与 Emoji 表情之间的坑」,介绍了如何解决由于输入框限制 Emoji 表情的输入导致中文拼音也无法输入的问题。 后面我们又有了新需求:对输入框已输入的文本字数进行实时统计,并在界面上显示剩余字数,

  • 我试图限制用户可以在文本字段中输入的字符的最大长度,但似乎不起作用。 以下是代码: 我做错什么了吗?我怎样才能使限制正常工作?

  • 我正在尝试使用pycrypto加密我的数据。我已经为此编写了以下代码。 但我的错误率越来越低 如何控制输入字符串?输入字符串可以是任意长度。