通过使用第三方输入法替换系统原生输入法,用户可以实现一些特殊的功能。比如一个特别新颖的输入方式,或输入iOS原生输入法并不支持的语言。第三方输入法的基本功能很简单:通过点击、手势,或者其他输入事件,然后通过一个未分类的 NSString对象在当前文本输入对象的插入点插入文字。

卷首语

请先确保您开发的第三方输入法真的要用于整个系统。若您只打算为您的应用程序提供一个完全定制的输入法或者只打算给系统输入法添加新的定制按键,那么iOS SDK为您提供了更好的方法。详情见Text Programming Guide for iOS中的Custom Views for Data Input关于自定义输入视图和输入辅助视图的介绍。

当用户选择了某个输入法后,它将对用户打开的所有应用程序开放。因此,开发者创建的输入法至少包含了基本的输入功能,更重要的是,输入法必须允许用户切换到另一个输入法。

了解用户对输入法的期望

为了了解用户对您开发的第三方输入法的期望,请先向系统输入法学习:速度很快、反应灵敏并且能实现用户想要的功能。系统输入法永远不会中断用户的信息和请求。如果您提供需要用户与输入法程序交互的功能,请将这些功能添加到容纳这个输入法扩展的应用程序中。

iOS用户期望的输入法功能

允许用户切换到另一个输入法是iOS用户期望并且是所有第三方输入法必须提供的功能。在系统输入法中,这个功能由一个被称为Global Key的地球按钮提供。iOS8提供专门的API给第三方输入法设置"切换"功能,请参阅:Providing a Way to Switch to Another Keyboard

系统输入法提供了一个基于现有文本输入对象的UIKeyboard

ios 输入法扩展_App Extension编程指南(iOS8/OS X v10.10):扩展类型--自定义键盘相关推荐

  1. iOS App集成Apple Pay 编程指南(中国版)

    文章将描述如何在iOS App中开发支持中国用户的Apple Pay,包括前后端的一些处理逻辑如支付信息解密. 关于Apple Pay的一些基本认识和相应API,具体可以参照Apple Pay官方文档 ...

  2. iOS学习笔记64-Apple Pay编程指南

    本文由CocoaChina译者xiaoying.tr培子翻译自苹果官方文档:Apple Pay Programming Guide 目录 关于Apple Pay 配置支付环境 创建支付请求 授权支付 ...

  3. [译]AppExtension编程指南:扩展基础1

    App Extension Programming Guide-App Extension Essentials AppExtension编程指南:扩展基础 App Extensions Increa ...

  4. iOS Handoff编程指南

    http://benbeng.leanote.com/post/Handoff%E7%BC%96%E7%A8%8B%E6%8C%87%E5%8D%97-part1 关于Handoff Handoff是 ...

  5. ios 输入法扩展_ios 应用扩展—— Keyboard Extension

    注意!转载请注明出处和作者,谢谢 自定义键盘扩展 我们来做一个可以进行科学运算的计算器键盘吧. 2. 创建 Keyboard Extension 扩展 下一步,命名,完成. 修改运行时执行的主应用 在 ...

  6. iOS App添加扩展App Extension

    主要参考文章 :  https://www.cnblogs.com/fengmin/p/6118592.html demo地址,里面额外添加了一个分享的扩展 :  https://github.com ...

  7. iOS开发:Core Animation编程指南

    关于Core Animation Core Animation是iOS与OS X平台上负责图形渲染与动画的基础设施.Core Animation可以动画视图和其他的可视元素.Core Animatio ...

  8. iOS之有关动画的总结/CoreAnimation编程指南、简单动画实例

    facebook的动画框架pop:https://github.com/facebook/pop or 核心动画类有以下分类: 提供显示内容的图层类. 动画和计时类. 布局和约束类. 事务类,在原子更 ...

  9. 《iOS编程指南》——导读

    本节书摘来自异步社区<iOS编程指南>一书中的目录,作者 [美]Alasdair Allan,更多章节内容可以访问云栖社区"异步社区"公众号查看 目 录 第 1 章 为 ...

最新文章

  1. python爬虫图片-Python图片爬取方法总结
  2. hadoop 2.x HA(QJM)安装部署规划
  3. 2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《数据可视化:构建实时动态运营数据分析大屏》篇...
  4. java编码给出二维数组List<List<Integer>>matrix,输出每列最小的值
  5. pandas用众数填充缺失值_【机器学习】scikit-learn中的数据预处理小结(归一化、缺失值填充、离散特征编码、连续值分箱)...
  6. Datatables参数详解
  7. SQL Server事务日志–第2部分–日志性能问题的主要原因
  8. 为什么要打jar_为什么海带要打一个结?
  9. MySQL中exists和in的区别
  10. Unity HDRP 光照贴图
  11. 5个不可多得的黑科技网站,让你在办公中如有神助,请低调收藏
  12. matlab中单相整流器,应用Matlab仿真单相PWM整流器的一种简单方法
  13. 用药安全,从娃娃抓起
  14. 赛门铁克通配型SSL证书
  15. 一百年沧桑巨变,数学大树依然长青
  16. 线性代数 --- 三种计算矩阵的行列式的方法之二 莱布尼兹展开法(个人笔记扫描版)
  17. python手机摄像头投测距_python opencv单目测距 小孔成像原理
  18. Federico Ferrari 和Ole Sigmund的高效3D拓扑优化程序
  19. mt6592android7,0.3GHz究竟差多少 MT6592三兄弟实测解析
  20. python文件中单词的删除_python-从文本列表中删除单词

热门文章

  1. Android ART模式预优化那些事
  2. 7.0安苏服务器稳定吗,魔兽世界8.0:安苏大区天天爆炸,网易能把逆水寒服务器还回来吗?...
  3. 青龙----乐玩星球 (男孩网络出品)
  4. 生活的感悟(13、14)
  5. 呼叫中心管理系统的优势
  6. Java 八种基本数据类型byte、short、int、long、float、double、boolean、char以及类型转换运算
  7. 浏览器中自定义搜索引擎(其实搜索引擎格式,也可以 应用到手机Firefox浏览器中,方便切换)
  8. php获取今日头条视频地址并插入织梦cms数据库
  9. 大剑与太刀:《怪物猎人》武器设计风格浅析(一)
  10. Mac本M1芯片无法使用Android模拟器的解决方案及android-emulator-m1-preview的安装