我目前正在研究iOS的键盘扩展,现在我想知道如何将多个布局支持集成到系统设置中.
在系统设置中,默认的en_US键盘有一个附加菜单(由右边的箭头指示),您可以从中选择多种键盘布局,如下面的iOS模拟器截图所示(iOS 9.1 13B137)
这可以通过自定义键盘扩展来实现吗?我找不到任何关于它的文件. (这可能意味着要么使用公共API也不可能,或者我使用Google太愚蠢.)我在网上搜索了很多,但我发现的大部分内容都是关于在Info.plist中设置键盘区域设置关于如何以不同语言(注册为不同的键盘)启用系统键盘的文件或说明,我想避免.
我可以看到一个替代方案,如果这不起作用,那将基本上在一个包装应用程序中创建多个键盘扩展,其中包括相同的代码库,但定义其他布局.然而,这看起来相当丑陋,使代码混乱,人们将不得不单独启用每个布局,从我的角度来看,这不是最用户友好的方法.如上所述,iOS附带了不同语言的不同键盘,但我试图为同一种语言提供多种键盘布局,所以这不是我想要的.
解决方法
这似乎不是直接支持的.就像你说的,其他第三方键盘通过提供备用键盘布局作为键盘本身的功能来解决这个问题.
例如,Swype通过长按空格键来允许QWERTY / AZERTY / QWERTZ布局更改.