KeyboardKit Pro Logo

Version Documentation Swift 5.9 Documentation

KeyboardKit Pro

KeyboardKit 让您只需几行代码,使用 Swift & SwiftUI 就能创建出令人惊叹的 自定义键盘扩展

KeyboardKit 通过更多功能扩展了 Apple 有限的键盘 API。 KeyboardKit Pro 通过解锁本地化键盘、自动完成、表情符号键盘、AI 支持、主题等等,进一步扩展了这些功能。

安装

KeyboardKit Pro 可以使用 Swift Package Manager 进行安装

https://github.com/KeyboardKit/KeyboardKitPro.git

使用 KeyboardKit Pro 需要许可证。 您可以在 KeyboardKit 网站Gumroad 商店上注册。

重要提示

与 KeyboardKit 不同,KeyboardKit Pro 是一个二进制目标,必须仅链接到应用目标。

入门

设置 KeyboardKit 最简单的方法是首先为您的应用程序创建一个 KeyboardApp

extension KeyboardApp {

        static var keyboardKitDemo: KeyboardApp {
        .init(
            name: "KeyboardKit",
            licenseKey: "your-key-here",                // Sets up KeyboardKit Pro!
            appGroupId: "group.com.keyboardkit.demo",   // Sets up App Group data sync
            locales: .keyboardKitSupported,             // Sets up the enabled locales
            autocomplete: .init(                        // Sets up custom autocomplete  
                nextWordPredictionRequest: .claude(...) // Sets up AI-based prediction
            ),
            deepLinks: .init(app: "kkdemo://", ...)     // Defines how to open the app
        )
    }
}

接下来,让您的 KeyboardController 继承 KeyboardInputViewController 而不是 UIInputViewController

class KeyboardController: KeyboardInputViewController {}

这将解锁其他功能和特性,并将 services 和可观察的 state 注入到控制器。

接下来,覆盖 viewDidLoad() 并使用您的应用程序值调用 setupPro(for:)

class KeyboardViewController: KeyboardInputViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        setup(for: .keyboardKitDemo) { result in
            // If result is successful, KeyboardKit Pro is now active
            // You can now customize your keyboard and tweak features 
        }
    }
}

要替换或自定义标准的 KeyboardView 视图,只需覆盖 viewWillSetupKeyboardView() 并使用您想要使用的视图调用 setupKeyboardView(with:)

class KeyboardViewController: KeyboardInputViewController {

    override func viewWillSetupKeyboardView() {
        setupKeyboardView { [weak self] controller in // <-- Use weak or unknowned self!
            KeyboardView(
                state: controller.state,
                services: controller.services,
                buttonContent: { $0.view },
                buttonView: { $0.view },
                collapsedView: { $0.view },
                emojiKeyboard: { $0.view },
                toolbar: { $0.view }
            )
        }
    }
}

要使用相同的键盘配置来设置您的主应用程序,只需将内容视图包装在 KeyboardAppView

@main
struct MyApp: App {

    var body: some Scene {
        WindowGroup {
            KeyboardAppView(for: .keyboardKitDemo) {
                ContentView()
            }
        }
    }
}

有关更多信息,请参见入门指南要点 文章。

本地化

KeyboardKit 支持 71 个键盘特定的语言环境

🇺🇸 🇦🇱 🇦🇪 🇦🇲 🇧🇾 🇧🇬 🇦🇩 🏳️ 🏳️ 🇭🇷
🇨🇿 🇩🇰 🇳🇱 🇧🇪 🇦🇺 🇨🇦 🇬🇧 🇺🇸 🇪🇪 🇫🇴
🇵🇭 🇫🇮 🇫🇷 🇨🇦 🇧🇪 🇨🇭 🇬🇪 🇩🇪 🇦🇹 🇨🇭
🇬🇷 🇺🇸 🇮🇱 🇭🇺 🇮🇸 🏳️ 🇮🇩 🇮🇪 🇮🇹 🇰🇿
🇹🇯 🇹🇯 🇹🇯 🇱🇻 🇱🇹 🇲🇰 🇲🇾 🇲🇹 🇲🇳 🏳️
🇳🇴 🇳🇴 🇮🇷 🇵🇱 🇵🇹 🇧🇷 🇷🇴 🇷🇺 🇷🇸 🇷🇸
🇸🇰 🇸🇮 🇪🇸 🇦🇷 🇲🇽 🇸🇪 🇰🇪 🇹🇷 🇺🇦 🇺🇿
🏴󠁧󠁢󠁷󠁬󠁳󠁿

KeyboardKit 仅包含本地化字符串,而 KeyboardKit Pro 解锁了所有支持的语言环境的本地化键盘、布局、标注和行为。

功能

KeyboardKit 提供了一个免费的开源键盘引擎。 KeyboardKit Pro 解锁了更强大的专业功能。

开源

KeyboardKit Pro

文档

在线文档 具有详细的入门指南、每个功能的详细文章、代码示例等。您也可以从源代码构建它,以获得更好的格式。

演示应用

主存储库 具有一个演示应用程序,展示了如何设置主键盘应用程序、显示键盘状态、提供应用程序内设置、链接到系统设置、应用自定义样式等。

该应用程序有两个键盘 - 一个使用 KeyboardKit 的 Keyboard 和一个使用 KeyboardKit Pro 的 KeyboardPro

重要提示

该演示程序未进行代码签名,因此无法使用 App Group 在应用程序及其键盘之间同步设置。 因此,KeyboardPro 键盘也在键盘中具有键盘设置。

KeyboardKit 应用

如果您想在无需编写任何代码或从 Xcode 构建演示应用程序的情况下尝试 KeyboardKit,则 KeyboardKit 应用程序 允许您只需从 App Store 下载它即可试用许多功能。

联系方式

如果您有任何问题或想以任何方式做出贡献,请随时与我们联系

商业许可

使用 KeyboardKit Pro 需要许可证。 您可以在 KeyboardKit 网站Gumroad 商店上注册。