iOS 8 中苹果开放了各种各样的全新API,但最引人注目的就是开放了可于全系统所使用的第三方自定义键盘的权限,但究竟我们怎样才能自己建置一个第三方键盘呢?今天「畅想资源」就教大家如何用Swift来完成你自己的键盘!
注意事项
首先,我们先看看 iOS 8 苹果所允许的第三方键盘的限制:
- 第三方键盘不允许存取「设定」App内大部分原生键盘的设置(如自动大写、自动修正等等)
- 第三方键盘不允许于例如密码框、号码盘(UIKeyboardTypeNamePhonePad)等特殊文本框内使用
- 无法选择文本框内的文字(只有正在使用的App含有这一权限)
- App 开发者可以禁止在他们的程序(如网银等)内使用第三方键盘
效果预览
一、创建新Project及Extension
1、首先我们当然还是要在Xcode中新创建一个Project、记得将语言设置为「Swift」(所有图片点击放大)
2、点击左侧文件列表最顶部的Project项目,然后点击靠右侧边栏底部的
按钮3、选择并添加「iOS」-「Application Extension」-「Custom Keyboard」
4、注意这个Extension的「Project Name」不能和整个Project的名称重复,然后点击
5、如果他询问你是否要激活该Extension,点击
即可6、我们可以看到Xcode已经自动为我们加入了一段Sample代码、我们可以直接在顶部选择带有「Custom Extension」标志的Project于iOS模拟器上的Safari进行测试
7、注意在进入Safari后,你的键盘默认并不是开启的,你需要进入「设定 (Settings)」-「一般 (General)」-「键盘 (Keyboard)」-「键盘 (Keyboards)」-「新增键盘... (Add New Keyboard...)」内新增你自己的第三方键盘
8、双击Mac键盘上的 Shift + Command + H (相当于双击模拟器的 Home 键),完全退出Safari并重新打开
9、现在长按你的键盘「地球」图标,就可以看到并选择你的第三方键盘了:
10、不过,现在键盘还只有一个Xcode自带的「Next Keyboard」的功能,所以就让我们开始敲代码、做一个自己的第三方键盘吧!(详见下页)