flutter根據給定寬度自適應縮放字型大小

劉成發表於2018-11-29

flutterautotext

flutter 外掛 github.com/LiuC520/flu…

根據寬度自動縮放字型

screenshot.png

屬性:

  •  text  ,    //String 要顯示的文字
    複製程式碼
  •  width</font> , //doule 指定text的父容器的寬度,必須制定寬度
    複製程式碼
  • minTextSize , //double 最小的字型大小   預設最小是6
    複製程式碼
  •  textSize , //double 正常的字型大小,預設值是14
    複製程式碼
  • textColor , //Color 正常的字型顏色
    複製程式碼
  •  textStyle  ,//TextStyle  textStyle文字樣式,上面的textSize和textColor可以不用單獨寫,寫這個也行,同樣用這個也可以設定字型粗體啊,斜體啊啥的,功能更強大些
    複製程式碼
提示:

  ```width```  這個是必須的屬性,因為在build之前無法拿到寬度,必須指定寬度,才能根據寬度進行適配
 其實原理很簡單,就是給一個動畫,然後在動畫結束拿到text的寬度是否大於給定的寬度,
 如果大於給定的寬度,做一個迴圈來縮小字型,然後重新判斷字型的寬度,直到寬度小於等於給定的寬度為止。
複製程式碼

Example

1、首先在pubspec.yaml中新增依賴


dependencies:
  flutter:
    sdk: flutter
  flutterautotext:
    git: https://github.com/LiuC520/flutterautotext.git
複製程式碼
    import 'package:flutterautotext/flutterautotext.dart';



    FlutterAutoText(
        width: 50, //這個是必須的
        text: "我是劉成" ,
        textSize: 12,
    ),

複製程式碼

相關文章