跳至主要內容

塗鴉文字輸入用戶端

摘要

#

將三個方法 showToolbarinsertTextPlaceholderremoveTextPlaceholder 新增至 TextInputClient 介面,以允許 iOS 14 的塗鴉功能插入和移除文字預留位置,並顯示工具列。

背景

#

自 iOS 14 起,iPad 在使用 Apple Pencil 時支援「隨手寫」功能。此功能允許使用者使用 Apple Pencil 與文字欄位互動,以新增、刪除、選取和修改文字。

變更說明

#

在原生文字小工具中,當使用者在執行 iOS 14 或更高版本的 iPad 上使用 Apple Pencil 選取文字時,會顯示文字工具列。為了複製此行為,平台會傳送一個名為 TextInputClient.showToolbartextInput 通道訊息。這會通知 Dart 程式碼應顯示工具列。

當使用者按住 Apple Pencil 時,文字中會顯示視覺間隙,以允許使用者有額外的空間書寫。為了複製此行為,平台會傳送名為 TextInputClient.insertTextPlaceholderTextInputClient.removeTextPlaceholdertextInput 通道訊息。多行文字輸入應具有提供垂直空間的佔位符,而單行輸入則應提供水平空間。

移轉指南

#

如果您之前實作了 TextEditingClient,則必須覆寫 showToolbarinsertTextPlaceholderremoveTextPlaceholder,以支援這些「隨手寫」功能,或提供空的實作。

若要遷移,請實作 showToolbarinsertTextPlaceholderremoveTextPlaceholder

遷移前的程式碼

dart
class MyCustomTextInputClient implements TextInputClient {
  ...
}

遷移後的程式碼

dart
class MyCustomTextInputClient implements TextInputClient {
  ...
  @override
  void showToolbar() {
    ...
  }
  
  @override
  void insertTextPlaceholder(Size size) {
    ...
  }
  
  @override
  void removeTextPlaceholder() {
    ...
  }
}

時間表

#

已於版本中加入:2.9.0-1.0.pre
在穩定版本中:2.10

參考

#

API 文件

相關問題

相關 PR