"Apple Watch App of the Year" - AppAdvice
"Makes Typing a Breeze" - Forbes
Try out the latest version of the keyboard in the FlickType Notes app.
- Copy the
FlickTypeKit
directory fromFlickTypeKit Sample (Swift)
into your project root folder.
Note: Do not drag it into Xcode.
Note: For Xcode 11, use the swift-5.1
branch.
- Under General > Embedded Binaries: click the + button, then
Add Other...
and addFlickTypeKit.framework
. - Under Build Phases, add a "New Run Script Phase" and place it before the "Compile Sources" phase. Set the contents of the script to the following, to automatically switch between the
watchos
andwatchsimulator
variants of the framework as needed:
set -eu
"${PROJECT_DIR}/FlickTypeKit/_internal/select-framework.sh" "${PLATFORM_NAME}"
- Under Build Phases > Copy Bundle Resources, add the
App Resources/FlickType.storyboard
andApp Resources/keyboard.png
files. - Add a "Storyboard Reference" to your main watch storyboard file and set its "Referenced ID" to
FlickType
.
That's it!
Note: If your app is in Objective-C, make sure Always Embed Swift Standard Libraries is set to YES for the watch extension target. You can also watch this integration tutorial
Simply import FlickType
and then modify your existing presentTextInputController()
calls to include the additional flickTypeMode
argument:
import FlickTypeKit
presentTextInputController(withSuggestions: nil, allowedInputMode: .allowEmoji, flickTypeMode: .ask) { items in
if let text = items?.first as? String {
print("User typed text: \(text)")
}
}
Note: FlickTypeKit.framework
is initially an empty placeholder, and Xcode might highlight the import FlickTypeKit
line with an error; simply building your project will populate the framework and fix this.
FlickType.Mode.ask
will offer a choice between FlickType and the standard input methods (recommended).FlickType.Mode.always
will only offer FlickType, skipping the input method selection.FlickType.Mode.off
will only offer the standard input methods.
The optional startingText
argument can be used to support editing of existing text. Editing is currently only supported with FlickType; the value of startingText
is ignored when using one of the standard input methods.
Once you get things working in the Simulator, email us at [email protected] with the bundle ID of your watch extension target, so we can whitelist it for use on real devices.
See the included sample app, email us, or join us on Discord.
See our license page.
- Improved number & symbol entry
- More languages
- Much moreβ¦