是否可以为第一个字符手动创建 UITextRange?

Posted

技术标签:

【中文标题】是否可以为第一个字符手动创建 UITextRange?【英文标题】:Is it possible to create UITextRange manually for first character? 【发布时间】:2014-03-12 10:08:56 【问题描述】:

是否可以实例化UITextRangeUITextField 的第一个字符? 我需要访问UITextField 的第一个字符的矩形,有人可以帮我吗?

提前致谢

【问题讨论】:

【参考方案1】:

您可以使用UITextInput提供的方法手动创建UITextRange

UITextPosition *firstCharacterPosition = [textField beginningOfDocument];
UITextPosition *secondCharacterPosition = [textField positionFromPosition:firstCharacterPosition offset:1];
UITextRange *firstCharacterRange = [textField textRangeFromPosition:firstCharacterPosition toPosition:secondCharacterPosition];
NSString *firstCharacter = [textField textInRange:firstCharacterRange];

【讨论】:

当我在resignFirstResponder 的子类中覆盖UITextField 中使用此代码时,firstCharacter 几乎为空。我在哪里使用此代码正常工作? 此代码在编辑更改事件 ([textField addTarget:self action:@selector(textFieldDidEdit:) forControlEvents:UIControlEventEditingChanged]) 中工作。也许文本字段必须是第一响应者?

以上是关于是否可以为第一个字符手动创建 UITextRange?的主要内容,如果未能解决你的问题,请参考以下文章

将字符串拆分为第一个单词和其余文本?

是否可以创建在 Objective C 中手动开发的核心数据实体的快速扩展?

基于Amlogic 安卓9.0, 驱动简说:字符设备驱动,手动创建设备

Android使用ViewPager实现轮播图(自动和手动)

是否可以从父类指针向下转换为第二个子类中的子类指针?

InsertMenuItem将字符串切断为第一个char