Twitter 宣布将为 iOS 开发人员提供一种独立且灵活的开源 API,该 API 可以为应用程序提供功能全面的富文本编辑器,该编辑器与 Twitter for iOS 应用程序上用来编辑 tweet 的编辑器采用相同的底层。
官方通过 Twitter 对外公布了这一信息。Twitter 表示他们知道在 iOS 应用程序的开发过程中想要实现一个简单的文本编辑器是一件非常复杂的事情,因此这也是为什么 Twitter 要向所有人提供他们自己所开发的文本编辑器 API 的原因。
根据 Twitter 提供的说明文档,新的文本编辑器 API 解决了与语法突出显示和文本内容过滤相关的常见问题。虽然苹果也为 iOS 开发者提供了多种文本编辑 API,但这些 API 有很多局限性,而且太复杂以至于普通开发者难以理解——这也是 Twitter API 推出后旨在解决的问题。
在过去这么多年的时间里,Twitter 在为 iOS 平台开发多款软件的过程中学到了很多关于文本编辑的知识,我们希望 Twitter 文本编辑器的 API 可以帮助开发者改善应用程序内的文本编辑体验。
Twitter 文本编辑器提供了什么?
简单的基于委托的 API
Twitter 文本编辑器中基于委托的 API 设计与许多常见的 UIKit API 相似。
强大的文本属性更新逻辑
Twitter文本编辑器提供了简单的回调 API,用于在后台解析文本内容并更新文本属性,从而可以实现语法高亮等功能。
其他文本编辑事件
Twitter文本编辑器提供了额外事件,例如主要语言更改和基本书写方向更改,应用程序可以使用这些事件来更新 UI。
文本输入的安全事件处理
Twitter文本编辑器提供事件回调,仅在应用程序安全地过滤文本或更新相关用户界面时才调用事件回调。通常其他 API 很难做到这一点。
支持最新版本的 iOS
Twitter文本编辑器支持 iOS 11.0 及更高版本,因此几乎可以让所有 iOS 用户都能使用你所开发的应用程序。
Twitter 文本编辑器还附带了一个用 Swift 和 Objective-C 编写的示例应用程序,该应用程序演示了如何实现具有多种丰富编辑功能(包括语法高亮显示)的文本编辑器。
高级 API 并不一定能够带来出色的应用使用体验。与此同时,较低级别的 API 又需要大量有关文本编辑在多种语言中如何工作的知识,其中就包括了对双向脚本的支持,替代输入法以及盲文键盘等辅助技术的了解。
Twitter 文本编辑器 API 已经提交至 GitHub 托管仓库。需要在 Xcode 11 或更高版本中进行开发。