<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
偶然逛國外部落格,看到了一個介紹文字動畫的庫,進入 pub 一看,立馬就愛上這個動畫庫了,幾乎你能想到的文字動畫效果它都有!現在正式給大家安利一下這個庫:animated_text_kit。本篇我們介紹幾個酷炫的效果,其他的效果大家可以自行檢視官網檔案使用。
波浪湧動
上面的動畫效果只需要下面幾行程式碼,其中loadUntil
用於控制波浪最終停留的高度,取值是0-1.0,如果是1.0則會覆蓋滿整個文字,不足1.0的時候會在文字上一直顯示波浪湧動的效果。這種效果用來做頁面載入到時候比干巴巴地顯示個“載入中”有趣多了!
Widget liquidText(String text) { return SizedBox( width: 320.0, child: TextLiquidFill( text: text, waveColor: Colors.blue[400]!, boxBackgroundColor: Colors.redAccent, textStyle: TextStyle( fontSize: 80.0, fontWeight: FontWeight.bold, ), boxHeight: 300.0, loadUntil: 0.7, ), ); }
波浪跳動文字
文字按波浪線跳動的感覺是不是很酷,而且還支援文字組哦,可以實現多行文字依次動起來!程式碼也只有幾行,其中repeatForever
代表動畫是否一直重複,如果為否的話,按設定次數重複(預設3次,可設定)。
Widget wavyText(List<String> texts) { return DefaultTextStyle( style: const TextStyle( color: Colors.blue, fontSize: 20.0, ), child: AnimatedTextKit( animatedTexts: texts.map((e) => WavyAnimatedText(e)).toList(), isRepeatingAnimation: true, repeatForever: true, onTap: () { print("文字點選事件"); }, ), ); }
彩虹文字動效
一道彩虹滑過文字,最終留下漸變的效果,瞬間讓文字豐富多彩!動效的顏色可以通過一個Color
陣列設定,而文字自身的引數(如字型、尺寸、粗細等)依舊可以保留。程式碼如下所示:
Widget rainbowText(List<String> texts) { const colorizeColors = [ Colors.purple, Colors.blue, Colors.yellow, Colors.red, ]; const colorizeTextStyle = TextStyle( fontSize: 36.0, fontWeight: FontWeight.bold, ); return SizedBox( width: 320.0, child: AnimatedTextKit( animatedTexts: texts .map((e) => ColorizeAnimatedText( e, textAlign: TextAlign.center, textStyle: colorizeTextStyle, colors: colorizeColors, )) .toList(), isRepeatingAnimation: true, repeatForever: true, onTap: () { print("文字點選事件"); }, ), ); }
捲動文字
一行文字像捲動廣告牌那樣捲動下來,非常適合做一些動態資訊的播報。程式碼如下:
Widget rotateText(List<String> texts) { return SizedBox( width: 320.0, height: 100.0, child: DefaultTextStyle( style: const TextStyle( fontSize: 36.0, fontFamily: 'Horizon', fontWeight: FontWeight.bold, color: Colors.blue, ), child: AnimatedTextKit( animatedTexts: texts.map((e) => RotateAnimatedText(e)).toList(), onTap: () { print("點選事件"); }, repeatForever: true, ), ), ); }
打字效果
一個個文字像敲擊鍵盤一樣出現在螢幕上,如果配送機械鍵盤“啪啦啪啦”的聲音,簡直就感覺是真的在敲程式碼一樣!程式碼一樣很簡單!
Widget typerText(List<String> texts) { return SizedBox( width: 320.0, child: DefaultTextStyle( style: const TextStyle( fontSize: 30.0, color: Colors.blue, ), child: AnimatedTextKit( animatedTexts: texts .map((e) => TyperAnimatedText( e, textAlign: TextAlign.start, speed: Duration(milliseconds: 300), )) .toList(), onTap: () { print("文字點選事件"); }, repeatForever: true, ), ), ); }
animated_text_kit 還提供了其他文字動效,如下所示:
支援自定義效果,只需要動效類繼承AnimatedText
,然後過載下面的方法就可以了:
initAnimation
:初始化 Animation
物件,並將其與 AnimationController
繫結;animatedBuilder
:動效元件構建方法,根據 AnimationController 的值構建當前狀態的元件;completeText
:動畫完成後的元件,預設是返回一個具有樣式修飾的文字。animated_text_kit 是一個非常受歡迎的文字動畫庫,在 pub上收穫了超過2000個喜歡,Github 上貢獻者22人,收穫了1.2k Star,可以說十分強大的。更重要的是它的使用非常簡潔,檔案完善,基本上拿來即用,喜歡的朋友趕緊用起來,讓你的文字酷炫起來!
以上就是Android Flutter實現五種酷炫文字動畫效果詳解的詳細內容,更多關於Android Flutter文字動畫的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45