UITextField限制输入字数高亮状态下输入框内真实类容与textFiled(解决中文输入问题)

不多说,坑爹的玩意,直接上代码:

static const NSInteger kMaxLength = 10;

1.[_textField addTarget:self action:@selector(textFieldChange) forControlEvents:UIControlEventEditingChanged];

2.

//限定主题字数 10个

- (void)textFieldChange{

NSString *toBeString = self.textField.text;

NSString *lang = [[UITextInputMode currentInputMode] primaryLanguage];

if([lang isEqualToString:@"zh-Hans"]){ //简体中文输入,包括简体拼音,健体五笔,简体手写

UITextRange *selectedRange = [self.textField markedTextRange];

UITextPosition *position = [self.textField positionFromPosition:selectedRange.start offset:0];

if (!position){//非高亮

if (toBeString.length > kMaxLength) {

[self.view makeToast:@"您最多可以输入10个字" duration:1 position:@"top"];

self.textField.text = [toBeString substringToIndex:kMaxLength];

}

}

}else{//中文输入法以外

if (toBeString.length > kMaxLength) {

[self.view makeToast:@"您最多可以输入10个字" duration:1 position:@"top"];

self.textField.text = [toBeString substringToIndex:kMaxLength];

}

}

}

时间: 2024-08-29 10:48:04

UITextField限制输入字数高亮状态下输入框内真实类容与textFiled(解决中文输入问题)的相关文章

ios UIButton设置高亮状态下的背景色

一,通过按钮的事件来设置背景色 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 - (void)viewDidLoad {     [super viewDidLoad];          UIButton *button1 = [[UIButton alloc] initWithFrame:CGRectMake(50, 200, 100, 50)];     [button1 setTitle:@"button1" 

《转载》ubuntu Sublime text 3 解决中文输入问题

其实,在这个文章之前,网上都有好多教程了.不知道是不是因为复制黏贴的传播太多,导致有些字符串的丢失,导致编译失败,so库文件无法载入,从而不能输入中文.折腾了许久之后,终于搞定了.记录下来,方便自己下次重装系统的时候用到. 按照这个教程装好ST之后,按下面的命令步骤来操作即可使用中文输入. 1.下载所需要的文件,并解压: wget  http://y4nwen.googlecode.com/files/sublime_text_chinese-input-method.tar.gz tar zx

Ubuntu安装Sublime并解决中文输入问题

1添加源 sudo add-apt-repository ppa:webupd8team/sublime-text-2 2安装sublime sudo apt-get update sudo apt-get install sublime-text 3.解决中文输入问题 3.1保存下面的代码到文件sublime_imfix.c /*sublime-imfix.cUse LD_PRELOAD to interpose some function to fix sublime input metho

Eclipse+PyDev解决中文输入和注释问题

Eclipse的设置 window->preferences->general->editors->text editors->spelling->encoding->UTF-8,编辑器的编码格式 window->preferences->workspace->text file encoding->UTF-8 打开eclipse安装目录->eclipse.ini,末行加上”-Dfile.encoding=UTF-8” 更改空白模块默

Linux下修改MySQL数据库字符编码为UTF-8解决中文乱码

由于MySQL编码原因会导致数据库出现乱码. 解决办法: 修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操作: 1.进入MySQL控制台 >mysql -uroot -p #输入密码进入 >status; #查看当前MySQL运行状态,如下图所示: 2.修改mysql配置文件 [[email protected] ~]# vi /etc/my.cnf #在[client]段增加下面代码 default-character-set=utf

Linux下MySQL数据库的my.cnf配置文件,解决中文乱码问题

系统 CentOS 7.7 MySQL - 5.7.28文件放置目录:/etc/文件权限:644解决问题:存储中文数据乱码 1 # For advice on how to change settings please see 2 # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html 3 # *** DO NOT EDIT THIS FILE. It's a template which will

怎样在安卓中实现在锁屏状态下弹出对话框,并可以震动和铃声,就像闹钟似的?

============问题描述============ 我想要在应用弹出对话框,程序在后台运行,当达到条件后弹出对话框并有震动和铃声,但是在锁屏状态下却没反应,有什么办法解决吗? ============解决方案1============ // 解锁 KeyguardManager manager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE); if( manager.inKeyguardRestrictedInputMode()

Ubuntu 系统 sublime3 中文输入

转载自  http://doc.polarwin.cn/tutorial/Ubuntu_sublime3_chinese_input.html -------------本文完全复制的上面的文章-------------------- Ubuntu安装sublime3并解决中文输入问题 1 安装 首先添加源: sudo add-apt-repository ppa:webupd8team/sublime-text-3 然后更新: sudo apt-get update 然后安装: sudo ap

应用程序启动器 “sublime_text.desktop“ 还没有被标记为 信任。如果您不知道这个文件的来源,那么启动它可能会不安全。解决sublime在ubuntu中不支持中文输入问题。

1.下载 git clone https://github.com/lyfeyaj/sublime-text-imfix.git 2.进行一些处理 cd ~/sublime-text-imfix sudo cp ./lib/libsublime-imfix.so /opt/sublime_text/ sudo cp ./src/subl /usr/bin/ 这样每次都要输入subl才能打开,很不友好. 对Desktop文件进行改造,可以完美解决中文输入. 原来的 [Desktop Entry]