如果需要开发第三方键盘 首先得了解一下苹果官方文档  https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/Keyboard.html

然后建议看一下 APPExtension

http://www.cocoachina.com/ios/20140918/9677.html

键盘应用属于你的hostAPP 所以如果你要了解appGroups来做到两个应用间信息传输

使用方法

NSUserDefaults *keyboarddefaults = [[NSUserDefaults alloc] initWithSuiteName:appGroups];

appGroups是我们设置的字段 与添加appGroup的字段一致

xcode会给我们生成keyboard的类 在这个类 我们可以做第三方键盘

1.这个类中建议用autolayout做约束

2.

CGFloat _expandedHeight = 256;

NSLayoutConstraint *_heightConstraint = [NSLayoutConstraint constraintWithItem:self.view attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute   multiplier:0 constant: _expandedHeight];

[self.view addConstraint: _heightConstraint];

该方法可以设置键盘高度

我遇到的问题:在updateContraint 中调用无效

3. 输入文字:调用协议方法 textDocumentProxy.

- (BOOL)hasText;

- (void)insertText:(NSString *)text; //输入文字

- (void)deleteBackward;//删除文字

我们的键盘如果要通过审核 就必须要有一个下一个输入法的按钮 参照原生的那个地球按钮

调用

- (void)advanceToNextInputMode

这个方法就可以完成

apple开放的API较少 自己看文档是个很好的选择

4 还遇到一个问题:暂时无法做到从自己的键盘端跳转到mainApp

以前使用webview是可以做到 但是apple更新之后禁用这个方法  stackOverflow上的建议也无效

希望有解决这个问题的人可以告诉我

5  我们的组织 QQ群248458280 期待大家的光临 一起学习 一起成长

最新文章

  1. 记录一次bug解决过程:resultType和手动开启事务
  2. Redis的缓存策略和主键失效机制
  3. 串口 COM口 TTL RS-232 RS-485 区别 释疑
  4. IDE启动报错
  5. C# WebApi传参之Post请求-AJAX
  6. hadoop分布式安装教程(转)
  7. 有关PHP 10条有用的建议
  8. forEach、map、 for-in 、 for 、some 对比 break
  9. 动态规划(区间DP):HDU 5115 Dire Wolf
  10. 代码对齐 分类: C#小技巧 2014-04-17 14:45 166人阅读 评论(0) 收藏
  11. iOS开发中,应用内直接跳转到Appstore
  12. Spring接口编程_设值注入和构造注入
  13. python生成式
  14. 使用Identity Server 4建立Authorization Server (2)
  15. docker 安装与学习
  16. 安卓高级6 SnackBar
  17. c#链接access数据库
  18. SQLserver 新用户的创建以及权限的给与
  19. Implementing HTTPS Everywhere in ASP.Net MVC application.
  20. H5微信页面开发 IOS系统 input输入框失去焦点,软键盘关闭后,被撑起的页面无法回退到原来正常的位置,导致弹框里的按钮响应区域错位

热门文章

  1. 【App测试】怎么测试启动时间?
  2. android JNI开发
  3. 总结oninput、onchange与onpropertychange事件的用法和区别,onchange
  4. Spring 定时器的使用
  5. daydayup3 codeforces144C
  6. DeviceIoControl 应用层如何和驱动层通信?
  7. Repository - Service
  8. 更新证书错误:No matching provisioning profiles found
  9. Haskell 参考资料
  10. iOS面试题2