Android 14 非線性字體縮放功能已啟用
摘要
#Android 14 引入了高達 200% 的非線性字體縮放。當使用者在系統偏好設定中變更協助工具文字縮放時,可能會改變應用程式的外觀。
背景
#Android 14 非線性字體縮放功能會防止過度的協助工具字體縮放,方法是在使用者增加系統偏好設定中的文字縮放值時,以較小的速率縮放較大的文字。
移轉指南
#如Android 14 功能概觀所建議,請使用啟用最大字體大小 (200%
) 來測試您的 UI。這應該會驗證您的應用程式可以正確套用字體大小,並且可以容納較大的字體大小,而不會影響可用性。
若要在您的應用程式和自訂小工具中採用非線性字體縮放,請考慮從 textScaleFactor
遷移至 TextScaler
。若要了解如何遷移至 TextScaler
,請查看「棄用 textScaleFactor
而改用 TextScaler
」的遷移指南。
暫時選擇退出
若要暫時在 Android 14 上選擇退出非線性文字縮放,直到您遷移應用程式為止,請在應用程式的小工具樹狀結構頂端加入修改過的 MediaQuery
。
dart
runApp(
Builder(builder: (context) {
final mediaQueryData = MediaQuery.of(context);
final mediaQueryDataWithLinearTextScaling = mediaQueryData
.copyWith(textScaler: TextScaler.linear(mediaQueryData.textScaler.textScaleFactor));
return MediaQuery(data: mediaQueryDataWithLinearTextScaling, child: realWidgetTree);
}),
);
這會使用已棄用的 textScaleFactor
API。一旦該 API 從 Flutter API 中移除,它將停止運作。
時程表
#於版本中推出:3.14.0-11.0.pre
於穩定版本中推出:3.16
參考資料
#API 文件
相關議題
相關的 PR
另請參閱
除非另有說明,否則本網站上的文件均反映 Flutter 的最新穩定版本。頁面最後更新時間為 2024-04-04。 檢視原始碼 或 回報問題。