
KeyboardKit es un SDK Swiftui que le permite crear extensiones de teclado totalmente personalizables con algunas líneas de código.
KeyboardKit extiende las apis de teclado limitadas de Apple con más capacidades y proporciona funcionalidad adicional, para permitirle construir teclados personalizados excepcionales con poco esfuerzo.

KeyboardKit es de código abierto y completamente gratis. Se puede extender con KeyboardKit Pro para desbloquear características Pro, como teclados localizados, autocompletar y autocorrección, soporte de IA, un teclado emoji, temas, dictado y más.
KeyboardKit se puede instalar con el Swift Package Manager:
https://github.com/KeyboardKit/KeyboardKit.git
Para usar tecladokit en una extensión de teclado, simplemente importe KeyboardKit y permita que su KeyboardController herede KeyboardInputViewController en lugar de UIInputViewController :
import KeyboardKit
class KeyboardController : KeyboardInputViewController { } Esto le brinda acceso a funciones del ciclo de vida como viewWillSetupKeyboardView , Estado, Servicios, etc. observables, etc.
La forma más fácil de configurar KeyboardKit es crear un valor KeyboardApp que define información para su aplicación:
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:// " )
)
}
} Para configurar su teclado, simplemente anule viewDidLoad y llame a setup(for:) con su valor KeyboardApp :
class KeyboardViewController : KeyboardInputViewController {
override func viewDidLoad ( ) {
super . viewDidLoad ( )
setup ( for : . keyboardKitDemo )
}
} Para reemplazar o personalizar el teclado estándar KeyboardView , simplemente anule viewWillSetupKeyboardView y llame setupKeyboardView con la vista que desea usar:
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 ( ) }
)
}
}
} Para configurar su aplicación principal con la misma configuración, simplemente envuelva la vista de contenido raíz en un KeyboardAppView :
import SwiftUI
import KeyboardKit
@ main
struct MyApp : App {
var body : some Scene {
WindowGroup {
KeyboardAppView ( for : . keyboardKitDemo ) {
ContentView ( )
}
}
}
} Configuración de su aplicación y teclado con un KeyboardApp Sincronizará la configuración entre los dos Si se define un appGroupId , registre su licencia de KeyboardKit Pro si se define una licenseKey , configure la dictación, enlaces profundos, etc.
Para obtener más información, consulte la Guía de Getting Start.
KeyboardKit admite 71 locales específicos del teclado:
? ? ? ? ? ? ? ? ️? ️ ??
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ️ ?? ? ? ?
? ? ? ? ? ? ? ? ? ? ️
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
???????
KeyboardKit solo incluye cadenas localizadas, mientras que KeyboardKit Pro desbloquea teclados localizados, diseños, llamadas y comportamientos para todos los lugares compatibles.
Keyboardkit está lleno de características para ayudarlo a construir teclados personalizados increíbles:
Keyboardkit Pro extiende KeyboardKit con características de Pro:
UITextDocumentProxy lea el documento completo.La documentación en línea tiene un artículo detallado para cada característica, una guía exhaustiva de bienvenida, muestras de código, etc. También puede construirlo a partir del código fuente para obtener un mejor formato.
La carpeta Demo tiene una aplicación de demostración que muestra cómo configurar la aplicación principal del teclado, mostrar el estado del teclado, proporcionar configuraciones en la aplicación, enlace a la configuración del sistema, aplicar estilos personalizados, etc.
La aplicación tiene dos teclados: un Keyboard que usa KeyboardKit y un KeyboardPro que usa KeyboardKit Pro. Tenga en cuenta que debe habilitar el acceso completo para que algunas características funcionen, como la retroalimentación háptica.
Importante
La demostración no está firmada y, por lo tanto, no puede usar un grupo de aplicaciones para sincronizar la configuración entre la aplicación y sus teclados. Como tal, el teclado KeyboardPro también tiene pantallas de configuración en el teclado.
Si desea probar KeyboardKit sin tener que escribir ningún código o crear la aplicación de demostración desde Xcode, la aplicación KeyboardKit le permite probar muchas funciones simplemente descargándolo desde la App Store.
KeyboardKit es de código abierto y completamente gratuito, pero puede apoyar el proyecto convirtiéndose en un patrocinador de GitHub, actualizando a Keyboardkit Pro o ponerse en contacto para trabajar independientemente, soporte pagado, etc.
No dude en comunicarse si tiene preguntas o si desea contribuir de alguna manera:
KeyboardKit está disponible bajo la licencia MIT. Consulte el archivo de licencia para obtener más información.