iOS 知识点

UItextInput Protocol

2016-07-24  本文已影响539人  我是花老虎

UItextInput是一个protocol,一般来说,文字处理的控件都要遵守这个协议。如UITextField,UITextView。下面介绍一些文字处理的基本概念。

  1. marked text
    对于多步骤(multistage)的文字输入来说,有一些文字是已经输入在文本框里,却还没有点击确认,这些文字叫做marked text。中文有,日文也比较常见。


    marked text
  2. UITextPositionUITextRange
    遵守UITextInput协议的类都要创建这两个类的子类。为什么不用NSRangeNSInteger呢。用来表示文字的位置和范围。
    如何转化NSRangeNSInteger?
func offset(from: UITextPosition, to toPosition: UITextPosition) -> Int
func textRange(from fromPosition: UITextPosition, to toPosition: UITextPosition) -> UITextRange?
NSInteger startOffset = [tv offsetFromPosition:tv.beginningOfDocument toPosition:start];
  1. 坐标位置和UITextRange的转换
上一篇 下一篇

猜你喜欢

热点阅读