处理iOS 8键盘扩展中的返回键

Ben*_*ams 5 objective-c ios ios8

我正在使用iOS 8键盘扩展,目前当用户点击我的Return键时,我正在运行此代码:

[self.textDocumentProxy insertText:@"\n"];
Run Code Online (Sandbox Code Playgroud)

这在大多数地方都可以正常工作.但是,在"联系人"应用程序中,如果我编辑联系人,请选择第一个名称字段,然后按"返回",不会发生任何操作.它不会按预期移动到下一个字段.这与默认键盘形成对比,默认键盘会移动到下一个字段.

难道我做错了什么?

Dmi*_*yoN 1

是的。实际上每个 textDocumentProxy 都会有它的 UIReturnKeyType。根据您的 Return 键所使用的方法,应进行更改。

   typedef NS_ENUM(NSInteger, UIReturnKeyType) {
    UIReturnKeyDefault,
    UIReturnKeyGo,
    UIReturnKeyGoogle,
    UIReturnKeyJoin,
    UIReturnKeyNext,
    UIReturnKeyRoute,
    UIReturnKeySearch,
    UIReturnKeySend,
    UIReturnKeyYahoo,
    UIReturnKeyDone,
    UIReturnKeyEmergencyCall,
   };
Run Code Online (Sandbox Code Playgroud)

self.textDocumentProxy.returnKeyType在您的情况下,如果您看到当前返回,请实现跳转到下一个响应者UIReturnKeyNext