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)])
对于具有箭头的自定义键,您可以编写:
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文件以获取详细信息。
结语
如果该项目对您及您的团队有所帮助,请扩散信息并星标此项目。祝您好运,编码愉快!