成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫

這篇文章將為大家詳細講解有關(guān)如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的蒲江縣網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

flutter 動畫狀態(tài)監(jiān)聽器

AnimationController

//動畫控制器
AnimationController controller;
//AnimationController是一個特殊的Animation對象,在屏幕刷新的每一幀,就會生成一個新的值,
// 默認情況下,AnimationController在給定的時間段內(nèi)會線性的生成從0.0到1.0的數(shù)字
//用來控制動畫的開始與結(jié)束以及設(shè)置動畫的監(jiān)聽
//vsync參數(shù),存在vsync時會防止屏幕外動畫(動畫的UI不在當前屏幕時)消耗不必要的資源
//duration 動畫的時長,這里設(shè)置的 seconds: 2 為2秒,當然也可以設(shè)置毫秒 milliseconds:2000.
 controller =
 AnimationController(duration: const Duration(seconds: 2), vsync: this);
 //動畫開始、結(jié)束、向前移動或向后移動時會調(diào)用StatusListener
 controller.addStatusListener((status) {
 if (status == AnimationStatus.completed) {
 //動畫從 controller.reverse() 反向執(zhí)行 結(jié)束時會回調(diào)此方法
 print("status is completed");
 // controller.reset(); 將動畫重置到開始前的狀態(tài)
 //開始執(zhí)行
 //controller.forward();
 } else if (status == AnimationStatus.dismissed) {
 //動畫從 controller.forward() 正向執(zhí)行 結(jié)束時會回調(diào)此方法
 print("status is dismissed");
 //controller.forward();
 }else if (status == AnimationStatus.forward) {
 print("status is forward");
 //執(zhí)行 controller.forward() 會回調(diào)此狀態(tài)
 }else if (status == AnimationStatus.reverse) {
 //執(zhí)行 controller.reverse() 會回調(diào)此狀態(tài)
 print("status is reverse");
 }
 });

AnimationController 的常用操作說明

如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫

flutter AnimationStatus 動畫狀態(tài)說明

如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫

flutter FadeTransition實現(xiàn)透明度漸變動畫

如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫

//動畫控制器
 AnimationController controller; 
 
 controller =
 AnimationController(duration: const Duration(seconds: 2), vsync: this);
 //動畫開始、結(jié)束、向前移動或向后移動時會調(diào)用StatusListener
 controller.addStatusListener((status) {
 if (status == AnimationStatus.completed) {
 //動畫從 controller.forward() 正向執(zhí)行 結(jié)束時會回調(diào)此方法
 print("status is completed");
 //反向執(zhí)行
 //controller.reverse();
 } else if (status == AnimationStatus.dismissed) {
 //動畫從 controller.reverse() 反向執(zhí)行 結(jié)束時會回調(diào)此方法
 print("status is dismissed");
 //controller.forward();
 } else if (status == AnimationStatus.forward) {
 print("status is forward");
 //執(zhí)行 controller.forward() 會回調(diào)此狀態(tài)
 } else if (status == AnimationStatus.reverse) {
 //執(zhí)行 controller.reverse() 會回調(diào)此狀態(tài)
 print("status is reverse");
 }
 });

執(zhí)行動畫的view

 //漸變動畫
 Widget buildSlideTransition() {
 return Center(
 child: FadeTransition(
 opacity: controller,
 //將要執(zhí)行動畫的子view
 child: Container(
  width: 200,
  height: 200,
  color: Colors.grey,
  child: Image.network(
  "http://img5.duitang.com/uploads/item/201411/16/20141116124947_xBNxM.jpeg",
  ),
 ),
 ),
 );
 }

開始動畫

//動畫開始
controller.forward();

頁面消毀時

@override
 void dispose() {
 super.dispose();
 controller.dispose();
 }

關(guān)于如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

文章名稱:如何在flutter中利用FadeTransition實現(xiàn)透明度漸變動畫
標題鏈接:http://jinyejixie.com/article34/jjphse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設(shè)、、網(wǎng)站收錄、定制網(wǎng)站、企業(yè)建站、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
武宣县| 丹寨县| 高雄市| 正蓝旗| 梧州市| 清涧县| 博爱县| 唐山市| 嵊州市| 荣成市| 永新县| 将乐县| 昌图县| 类乌齐县| 宁明县| 南乐县| 呼伦贝尔市| 柞水县| 张掖市| 长岛县| 五峰| 偏关县| 辽阳市| 黄大仙区| 自贡市| 瑞安市| 平江县| 海南省| 常熟市| 五原县| 奉节县| 晋州市| 长沙县| 郑州市| 衡南县| 文安县| 富顺县| 衡阳县| 南丰县| 洪湖市| 青阳县|