NSString *lang = [self.inputTextField.textInputMode primaryLanguage]; // 键盘输入模式

    if ([lang isEqualToString:@"zh-Hans"])
{ // 简体中文输入,包括简体拼音,健体五笔,简体手写
UITextRange *selectedRange = [self.inputTextField markedTextRange]; //获取高亮部分 //获取已经确认的文字的长度
NSInteger confirmedlength = [self.inputTextField offsetFromPosition:self.inputTextField.beginningOfDocument
toPosition:selectedRange.start];
if ((nil == selectedRange) || selectedRange.isEmpty)
{
confirmedlength = self.inputTextField.text.length;
} //截断超过长度的部分
BOOL bCuttedOff = NO;
//处理一个字符长度超过多个的情况
if (confirmedlength >= 15)
{
NSRange rangeRange = [self.inputTextField.text rangeOfComposedCharacterSequencesForRange:NSMakeRange(0, 15)];
if (self.inputTextField.text.length > rangeRange.length)
{
bCuttedOff = YES;
self.inputTextField.text = [self.inputTextField.text substringSafeWithRange:rangeRange];
} }
if (YES == bCuttedOff)
{
//太长了
} return;
}
else
{
BOOL bCuttedOff = NO;
if (self.inputTextField.text.length > 15)
{
//处理一个字符长度超过多个的情况
NSRange rangeRange = [self.inputTextField.text rangeOfComposedCharacterSequencesForRange:NSMakeRange(0, 15)];
if (self.inputTextField.text.length > rangeRange.length)
{
bCuttedOff = YES;
self.inputTextField.text = [self.inputTextField.text substringSafeWithRange:rangeRange];
} }
if (YES == bCuttedOff)
{
//太长了
} return ;
}

最新文章

  1. JavaScript基础知识总结(三)
  2. Daily Scrum02 12.13
  3. Objective-C 再谈OC指针,对比C++/Java/Swift
  4. 启动Tomcat服务器报错: Several ports (8005, 8080, 8009) required
  5. Python在安装第三方模块遇到的问题及解决办法
  6. JVM 参数翻译汉化解释
  7. HDU 4679 Terrorist’s destroy
  8. 如何在WTL和MFC中使用duilib及如何静态使用duilib库!(初级讲解 附带一个Demo)
  9. Unable to create the store directory. (Exception from HRESULT: 0x80131468)
  10. android--HttpURLConnection(转载)
  11. GNU DAEMON THREAD <1>
  12. [leetcode] Reverse Linked List 分类: leetcode 算法 2015-07-09 18:44 2人阅读 评论(0) 收藏
  13. SharePoint Solutions Deployment-PowerShell
  14. nginx 配置访问限制
  15. Kettle启动及简单操作(1)
  16. 在js中,window != top 的作用
  17. 工厂模式(Factory Method)
  18. CVE-2017-8635复现
  19. PHP全栈学习笔记5
  20. Kotlin入门教程——目录索引

热门文章

  1. out.write(b,0,len)怎么解释?
  2. linux系统文件的安全与特殊权限
  3. 基于jquery的ajax方法封装
  4. [C++] inline function
  5. p4364 [九省联考2018]IIIDX
  6. 2018年计科五班秋季C语言基础课第1次作业
  7. C# WebService中任务处理线程创建子线程后
  8. ADT
  9. Gym 100989L (DFS)
  10. [示例] Drag And Drop for FireMonkey (Win & macOS)