
KeyboardKit是SwiftUI SDK,可讓您使用幾行代碼創建完全可自定義的鍵盤擴展名。
KeyboardKit具有更多功能,擴展了Apple的有限鍵盤API,並提供了其他功能,可讓您幾乎沒有努力構建出色的自定義鍵盤。

KeyboardKit是開源的,並且完全免費。它可以使用KeyboardKit Pro擴展到解鎖PRO功能,例如本地化鍵盤,自動完成和自動更正,AI支持,表情符號鍵盤,主題,命令等。
可以使用Swift Package Manager安裝KeyboardKit:
https://github.com/KeyboardKit/KeyboardKit.git
要在鍵盤擴展程序中使用KeyboardKit,只需導入KeyboardKit ,然後讓您的KeyboardController繼承KeyboardInputViewController而不是UIInputViewController :
import KeyboardKit
class KeyboardController : KeyboardInputViewController { }這使您可以訪問生命週期功能,例如viewWillSetupKeyboardView ,可觀察的狀態,服務等。
設置KeyboardKit的最簡單方法是創建一個KeyboardApp值,該值為您的應用程序定義信息:
extension KeyboardApp {
static var keyboardKitDemo : Self {
. init (
name : " KeyboardKit " ,
licenseKey : " keyboardkitpro-license-key " ,
bundleId : " com.keyboardkit.demo " ,
appGroupId : " group.com.keyboardkit.demo " ,
deepLinks : . init ( app : " kkdemo:// " )
)
}
}要設置鍵盤,只需覆蓋viewDidLoad並調用setup(for:)帶有KeyboardApp應用值:
class KeyboardViewController : KeyboardInputViewController {
override func viewDidLoad ( ) {
super . viewDidLoad ( )
setup ( for : . keyboardKitDemo )
}
}要替換或自定義標準KeyboardView鍵盤,只需使用您要使用的視圖來覆蓋viewWillSetupKeyboardView並調用setupKeyboardView :
class KeyboardViewController : KeyboardInputViewController {
override func viewWillSetupKeyboardView ( ) {
super . 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 : { _ in MyCustomToolbar ( ) }
)
}
}
}要設置具有相同配置的主應用程序,只需將root Content View包裝在KeyboardAppView中:
import SwiftUI
import KeyboardKit
@ main
struct MyApp : App {
var body : some Scene {
WindowGroup {
KeyboardAppView ( for : . keyboardKitDemo ) {
ContentView ( )
}
}
}
}如果定義了appGroupId ,則使用KeyboardApp APP設置您的應用程序和鍵盤將使兩者之間的設置同步,如果定義了licenseKey ,設置Distation,Deep Links,等等,請註冊您的鍵盤KitboardKit Pro許可證。
有關更多信息,請參閱“入門指南”。
KeyboardKit支持71個特定於鍵盤的環境:
? ? ? ? ? ? ? ? q? ? ️??
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?? ? ? ?
? ? ? ? ? ? ? ? ? ? ️
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
????????
KeyboardKit僅包含本地化字符串,而KeyboardKit Pro為所有受支持的地區的本地化鍵盤,佈局,賭注和行為。
KeyboardKit包含功能,可幫助您構建驚人的自定義鍵盤:
KeyboardKit Pro擴展了具有PRO功能的鍵盤Kit:
UITextDocumentProxy讀取完整文檔。在線文檔為每個功能提供了一篇詳細的文章,一個詳盡的啟動指南,代碼樣本等。您還可以從源代碼構建它以獲得更好的格式。
Demo文件夾具有一個演示應用程序,該應用程序顯示瞭如何設置主鍵盤應用程序,顯示鍵盤狀態,提供應用內設置,鏈接到系統設置,應用自定義樣式等。
該應用程序具有兩個鍵盤 - 一個使用鍵盤鍵Keyboard和使用鍵盤kit Pro的鍵盤Pro的KeyboardPro 。請注意,您需要啟用某些功能的完整訪問,例如觸覺反饋。
重要的
該演示未簽署代碼,因此不能使用應用程序組在應用程序及其鍵盤之間同步設置。因此, KeyboardPro鍵盤也具有鍵盤上的設置屏幕。
如果您想嘗試不需要編寫任何代碼或從Xcode構建演示應用程序的鍵盤庫,那麼KeyboardKit應用程序就可以通過從應用商店下載它來嘗試許多功能。
KeyboardKit是開源的,完全免費,但是您可以通過成為GitHub贊助商,升級到KeyboardKit Pro或與自由職業者工作,付費支持等聯繫來支持該項目。
如果您有疑問,或者您想以任何方式做出貢獻:
根據MIT許可證可用鍵盤kit。有關更多信息,請參見許可證文件。