Keybro 1.0.0

Keybro 1.0.0

Anton Gaenko 维护。



Keybro 1.0.0

  • 作者:
  • Anton Gaenko

build&test

Keybro

它是什么?

它是对 UIKeyCommand 的封装,允许您轻松地为 iOS 应用创建键盘快捷键。它可以加快应用在模拟器中的开发和手动测试,这个微型库只包含一个文件和仅有 120 行代码。您可以运行示例应用或向下滚动获取灵感。

为什么?

如果在开发过程中检查执行相同动作的次数(拖动鼠标光标、单击、滚动、再次拖动、再单击等),可能会认识到的,用键盘快捷键做同样的事情可以节省一些时间和精力。实际上,如果您不使用这个微型库,只需要使用 UIKeyCommand 就可以得到相同的结果。由您自行决定。

示例

这个项目的主要目的是提供您的基本思路和工具。

A) 显示特定屏幕并无需单次触摸即可关闭它们(源代码链接

B) 遍历屏幕上的控件(源代码链接

C) 使用空格滚动内容(源代码链接

D) 使用数字键盘输入密码(源代码链接

E) 使用箭头← →进行应用导航(源代码链接

F) 在标签控制器中切换标签(源代码链接

G) 或者做一些无趣但有趣的事情,比如缩放🔫源代码链接

安装

选项A:手动安装

只需下载并添加Keybro.swift作为源文件到你的项目中(代码共120行)。

curl -O https://raw.githubusercontent.com/antongaenko/keybro/main/keybro/Keybro.swift

选项B:使用 SPM

包名为 Keybro,完整包链接为 https://github.com/antongaenko/keybro

添加 import Keybro。就是这样。

其他选项

我计划稍后添加对 Cocoapods 和 Carthage 的支持。

如何使用?

UIViewController实例上调用方法:add(command: Command)add(commands: [Command])

如果您只想在调试构建中添加键盘快捷方式,请使用addDebug(command: Command)addDebug(commands: [Command])方法。

您可以在任何时候调用removeAllCommands()来删除附加到当前视图控制器上的命令。在简单情况下,无需调用它。

例如,对于预定义的键(空格、回车、退格、数字、Tab),您可以编写:

controller.add(commands: [.space(dismiss), .enter(dismiss), .backspace(dismiss)])

查看完整示例ScenariosExampleViewController

对于具有箭头的自定义键,您可以编写:

navigationController.add(commands: [
    .custom(input: UIKeyCommand.inputRightArrow, modifiers: [], action: { [weak navigationController] in
        navigationController?.pushViewController(LoopThroughExampleViewController(), animated: true)
    }),
    .custom(input: UIKeyCommand.inputLeftArrow, modifiers: [], action: { [weak navigationController] in
        navigationController?.popViewController(animated: true)
    })
])

查看完整示例AppDelegate

不要忘记在命令的操作块中使用weak引用。

贡献

如果您发现任何错误,请创建一个议题并提供建议。

作者

👋🏻 Anton Gaenko。您可以通过hi (at) antongaenko.dev与我联系以提问或一起编码。也许您想支持我,但看不到任何支付链接))))

许可证

该项目受到MIT许可证的许可 - 请参阅LICENSE.md文件以获取详细信息。

结语

如果该项目对您及您的团队有所帮助,请扩散信息并星标此项目。祝您好运,编码愉快!💁‍♂️