Open1
WWDC24: Writing Toolsの導入
UITextViewに自動で表示される
- 校正
- リライト
- 要約
- 要点まとめ
- リストや表に変換
Writing Toolsの変更は全てインラインで確認が可能
UITextView, NSTextView, WKWebViewを使用している場合は、そのまま動作する
TextKit2を利用しないと部分的な機能しか使えない点に注意
Writing Tools使用中のデリゲートメソッド
func textViewWritingToolsWillBegin(_ textView: UITextView) {
// Take necessary steps to prepare. For example, disable iCloud sync.
}
func textViewWritingToolsDidEnd(_ textView: UITextView) {
// Take necessary steps to recover. For example, reenable iCloud sync.
}
if !textView.isWritingToolsActive {
// Do work that needs to be avoided when Writing Tools is interacting with text view
// For example, in the textViewDidChange callback, app may want to avoid certain things
when Writing Tools is active
}
制御したい場合はオプトアウトが可能
WKWebViewはデフォルトで .limited
textView.writingToolsBehavior = .limited
textView.writingToolsBehavior = .none
Rich Text, Tableの使用などを制限可能
textView.writingToolsAllowedInputOptions = [.plainText]
textView.writingToolsAllowedInputOptions = [.plainText, .richText, .table]
NSViewなどでCustomTextViewを作成する場合も無料でWriting Toolsをサポートすることが可能
SwiftUIでは使えない..
動画で完全に触れられていない(UIKit, AppKitのみ)
grepしてもAPIが見当たらない
Writing Toolsの導入
公式ドキュメント