iOS展示文本内容
iOS的文本系统功能强大且简单易用。UIKit框架包含一组高级类来管理文本的展示和输入。同时它也提供展示如HTML,CSS,JavaScript等Web内容的类。
使用文本对象展示文本内容
文本对象展示风格化、格式化的文本,可以具有不同的字体、风格、尺寸。UIKit Framework提供三个主要的类:
- UILabel 展示静态文本串
- UITextField 展示一行可编辑文本
- UITextView 展示多行可编辑文本
尽管这些类实际上可以支持展示任意量级的文本,label和text field一般用来展示相对少量的文本,通常是一行。text views,用来展示大量文本。
Text view对象,按照段、列及页来展示格式化的精排版文本。这些提供给UITextView的精排版能力通过底层技术Text Kit实现,功能强大且易于扩展。更多信息转到Using Text Kit to Draw and Manage Text
下图展示了主要文本对象的例子。左图展示了几个不同风格的text field,右图展示了一个text view。背景上的备注是UILabel对象。
当使用text field以及text views时,你总是应该提供一个委托对象来管理这次文本编辑。Text views发送几个不同的通知到它的委托对象,通知他们何时编辑开始、结束,并且给他们重写一些编辑行为的机会。例如,委托能判定当前文本是否包含有效值,并且能够在不包含有效值的时候阻止编辑操作。当编辑操作结束时,你应该令委托得到结果文本并更新数据。
因为text field与text view的用途有些许差别,他们的委托方法也有些不同。代理方法不是必须要使用,但是如果不用,那么text field或者text view的用处就不大。