在iOS 8中使用自定义键盘可以使用新字符吗?

在iOS 8中,Apple赋予开发人员创build自定义键盘的能力。 在文档中 ,苹果声明如果你想支持iOS目前不支持的语言,你应该创build一个新的键盘。 因此,如果您能够支持新的语言,是否可以创build一个包含新的表情符号的键盘? 我会假设,苹果公司说,你可以支持一种新的语言,他们会希望有涉及到自定义字符。 如果包含自定义字符是可能的,其他设备(即使只有运行iOS 8的其他设备)将如何显示新字符?

根据应用程序扩展编程指南 ,一个自定义的键盘需要触摸或手势input(或其他,真的),并产生NSString对象插入到文本字段或其他基于文本的控件。

所以,对于你的问题的答案大多是否定的 – 键盘只能input系统认为是文本的东西。

那么,苹果如何谈论使用这个function来添加新的键盘语言呢? Unicode涵盖了很多脚本。 他们中的一些甚至可以在iOS附带的字体中使用字形,但不包含在苹果提供的键盘中。 (例如, 加拿大原住民字母表)。第三方键盘可以涵盖此类脚本,以便为不具有Apple键盘的语言提供支持。

还有各种各样的Unicode脚本,不包括iOS内置的字体,包括许多真正的语言以及Unicode联盟无法识别的非正式标准 – 你会发现Klingon,Quenya和Suess博士, 超越斑马 。 第三方键盘也可以添加对这些脚本的支持,但只有当用户安装了适当的字体才能渲染它们。

所以如果你想发明自己的表情符号,你必须提供:

  • 一个自定义键盘
  • 一个带有你的字符的字体(在Unicode中没有使用的代码点)
  • 一个其他软件的用户/供应商社区,他们知道代码点到你发明的字形的映射
  • 并在其他应用程序和其他平台中使用您的自定义字体。

(如果你只是想添加新的Unicode 7.0表情符号,可以跳过步骤3)