美文网首页
iOS [M1适配?]UIKeyCommand接收外接键盘输入

iOS [M1适配?]UIKeyCommand接收外接键盘输入

作者: 关灯侠 | 来源:发表于2020-12-25 16:15 被阅读0次

    使用场景

    给你的应用支持外接键盘,iOS应用或iPad应用。有人可能会问,为啥一个iOS应用要支持外接键盘?M1就是答案😊

    如何使用

    - (BOOL)canBecomeFirstResponder {
        return YES;
    }
    - (NSArray<UIKeyCommand *> *)keyCommands{
        UIKeyCommand *command = [UIKeyCommand commandWithTitle:@"shift+e" image:nil action:@selector(eShiftKeyPressed) input:@"e" modifierFlags:UIKeyModifierShift propertyList:nil];
        return @[command];
    }
    
    - (void)eShiftKeyPressed{
        NSLog(@"%s ==",__func__);
    }
    

    注意点

    keyCommandsUIResponder的方法,意味着你重写的类一定是在事件响应链上的,如果没有触发,可以尝试becomeFirstResponder

    模拟器测试

    需要设置两个地方,模拟器才会接收到你的键盘输入


    image
    image

    最后一点

    接入正确,设置正确后,并且模拟器在屏幕最前方,这个时候你长按command,可以看到你刚才设置的快捷键列表。

    快捷键列表呼出的条件:

    • 只有iPad应用可以呼出
    • 只有设置过少才会显示,太多也不会显示

    相关文章

      网友评论

          本文标题:iOS [M1适配?]UIKeyCommand接收外接键盘输入

          本文链接:https://www.haomeiwen.com/subject/lncinktx.html