问题标签 [ios-keyboard-extension]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
728 浏览

ios - 无法从可用键盘列表中选择我的自定义键盘

我正在为 iOS 设备开发一个自定义键盘应用程序。向我的应用程序添加键盘扩展后,我向 Main.storyboard 添加了一个 TextView,然后我在 iPhone 5 模拟器上运行了我的应用程序。

为了将我的自定义键盘添加到可用键盘列表中,我转到设置>常规>键盘>添加新键盘&在这里我添加了我的自定义键盘但是当我返回我的应用程序并尝试通过长按地球来选择我的自定义键盘时图标,我的自定义键盘没有显示在那里。

这是怎么回事

请回复&我很抱歉没有代码,因为我还没有编码

预先感谢

请忽略错误

0 投票
1 回答
984 浏览

ios8 - 如何在 Xcode 项目中添加和删除现有的自定义键盘扩展?

我想知道如何将现有的自定义键盘扩展添加到 Xcode 项目?

另外,如何从项目中完全删除自定义键盘扩展?

我不知道如何在项目中添加/或删除目标。

0 投票
1 回答
856 浏览

ios - 我们可以检测到哪个 ios 应用程序正在使用我的自定义键盘吗

我想在我的自定义键盘扩展应用程序中检测哪个应用程序正在使用我的扩展程序。我们能否在键盘扩展中检测到有关使用我的扩展的应用程序的任何信息。我​​认为这是不可能的。如果有人对此有了解,请分享。

谢谢

0 投票
1 回答
238 浏览

ios - iOS 8.3,键盘扩展 Safari 问题

我正在制作 iOS 键盘扩展。

但是当我在 Safari Web 中单击按钮后执行以下代码时,代理(UITextDocumentProxy)停止了。

它在 safari-top-search-bar 中运行良好,但在其他纯文本框中停止。

如果我在adjustTextPositionByCharacterOffset之后将块放入另一个队列上的 dispatch_async 并有一些延迟。有用

但是,它也使我的代码在所有其他应用程序中变慢。

有什么好主意吗?或者有什么方法可以检测它是否是 Safari?

0 投票
1 回答
691 浏览

ios - 从扩展写入存储在 App Group 容器中的数据库

我在 App Group 容器中存储了一个 sqlite 数据库,以便注册自定义快捷方式。

我可以从应用程序读取/写入它,但不能从键盘扩展程序读取/写入。似乎数据库处于扩展的只读模式。

我正在使用以下代码来访问它:

是否有一种解决方法可以从扩展键盘写入数据库,还是完全不可能?

数据库可从模拟器写入,但不能使用真实设备写入。我想这是因为 MacOS X 和 iOS 上的权限管理方式不同。

0 投票
1 回答
348 浏览

ios - 键盘扩展中advanceToNextInputMode后的iOS内存泄漏

我正在 iOS 8.3 上开发键盘扩展在开发过程中调用advanceToNextInputMode 后某处出现内存泄漏。

责任框架和泄露的对象看起来完全不受我的控制。

任何人都可以遇到类似的问题吗?

在此处输入图像描述

0 投票
1 回答
70 浏览

ios8 - 自定义键盘应用程序通用

是否必须使自定义键盘应用程序通用?
如果我的自定义键盘应用程序不支持 iPad 设备,Apple 审核团队会拒绝我的应用程序吗?

0 投票
1 回答
1867 浏览

ios - 是否可以在 IOS 8 中制作自定义表情符号键盘

所以我见过很多允许你“制作自己的表情符号”的应用程序,但它们实际上只是制作了一张你可以分享的图片。有没有办法让用户自己制作整个键盘?假设用户在设置中添加了应用程序的键盘,他现在可以从应用程序中添加自己编辑的图片作为键盘上的键之一吗?我找到了关于自定义键盘的东西,但它似乎只允许插入字符......

0 投票
1 回答
143 浏览

ios - 检测键盘何时完成更改大小并定位所有子视图

updateConstraints在我的自定义键盘中,我添加了一个增加键盘高度的约束。这会导致子视图调整(也使用自动布局)到新的大小。当布局完成调整大小并且所有子视图都已定位时,我需要调用一个函数(以存储一些新元素的位置以供以后使用,并手动更新一些元素以响应此新布局)。当尺寸发生变化并且元素重新定位时,例如在旋转设备之后,需要再次触发此代码。我应该使用什么函数来运行该代码?

viewDidAppear只调用一次,这还为时过早,因为当时键盘还没有调整大小。

updateViewConstraints不起作用,因为尚未布置子视图以响应更新的约束。我尝试调用self.view.setNeedsLayout()thenself.view.layoutIfNeeded()以尝试在调用我的函数之前强制进行更新,但这并没有什么不同——它仍然在键盘完成子视图布局之前运行该函数。

我试过viewDidLayoutSubviews了,虽然它是在视图解决后调用的,但问题是这个函数在键盘中滚动集合视图时被调用了一百万次。滚动时我不能调用那个函数,我只能在键盘大小改变并且视图就位后调用它一次。

我考虑过在viewDidAppear延迟后调用它,然后也以轮换方法(例如viewWillTransitionToSize在另一个延迟后)调用它,但这会非常脆弱。我可以增加延迟以使其不那么脆弱,但我想确保尽早调用此方法以确保尽快更新所有内容。

0 投票
0 回答
71 浏览

ios - iPhone 搜索中未使用键盘扩展?

我已经构建了一个键盘扩展程序,它在大多数应用程序中都能按预期工作。但是,它不是 iPhone 搜索栏中旋转的键盘之一:

在此处输入图像描述

只有系统键盘在那里。如何为搜索栏启用键盘扩展?