Flutter 實(shí)現(xiàn)進(jìn)度條效果
用flutter開(kāi)發(fā)的項(xiàng)目,最大的好處除了跨平臺(tái)之外,還有一點(diǎn)就是插件多,便于很多功能的實(shí)現(xiàn)。
畫(huà)風(fēng)(話鋒)一轉(zhuǎn),老子說(shuō),事物都有兩面性,物極必反。插件多是多,插件帶來(lái)的問(wèn)題也是不容小覷,總結(jié)下,插件帶來(lái)的幾大問(wèn)題。
(1)插件更新不及時(shí)
插件更新不及時(shí),會(huì)導(dǎo)致我們連編譯都過(guò)不去,甚至要去改插件的原生代碼,這個(gè)時(shí)候,我們可能會(huì)自己創(chuàng)建一個(gè)github插件,然后直接引用自己的github插件地址,算了,真不靠譜的插件作者!千言萬(wàn)語(yǔ)盡在不言中。。。
(2)插件沖突
插件沖突,有的時(shí)候是配置沖突,比如經(jīng)常遇到的android:resource="@xml/filepaths"/>
同樣是在manifest里面,有的插件配置的是filepaths,有的為file_paths,這個(gè)也挺痛苦的。
(3)包體積
插件用多了,包體積自然就大了,用戶一看這么大的包,下載半天,算了,當(dāng)然5G來(lái)了咱就另說(shuō)了。
話不多說(shuō),解決之道,就4個(gè)字:少用插件。
比如進(jìn)度條插件,之前我還用modal_progress_hud: ^0.1.3,發(fā)現(xiàn)沒(méi)必要,flutter本來(lái)就有LinearProgressIndicator,用來(lái)做進(jìn)度顯示的。干掉干掉。
上代碼:
LinearProgressIndicator( value: 0.3, valueColor: AlwaysStoppedAnimation<Color>(Colors.red), backgroundColor: Colors.blue, ),
其中,value為進(jìn)度值,valueColor為已經(jīng)進(jìn)行的進(jìn)度顏色,backgroundColor就是還沒(méi)到的那段進(jìn)度的顏色咯。
不要著急,上個(gè)完整的例子,給你們看效果。
import 'package:flutter/material.dart'; class ProgressDemo extends StatefulWidget { ProgressDemo({Key key}) : super(key: key); @override _ProgressDemoState createState() => _ProgressDemoState(); } class _ProgressDemoState extends State<ProgressDemo> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('flutter progress demo'), ), body: Container( margin: EdgeInsets.only(top: 20), alignment: Alignment.topCenter, child: FlatButton( child: Text('進(jìn)度'), color: Colors.blue, onPressed: () { return showDialog(context: context, builder: (context) { return AlertDialog( backgroundColor: Colors.transparent, title: Text('上傳中...'), content: LinearProgressIndicator( value: 0.3, valueColor: AlwaysStoppedAnimation<Color>(Colors.red), backgroundColor: Colors.blue, ), shape: RoundedRectangleBorder( borderRadius: BorderRadius.all(Radius.circular(10)) ), ); },); }, ), ), ); } }
好了,效果如下:
總結(jié)
到此這篇關(guān)于Flutter 一行代碼快速實(shí)現(xiàn)你的進(jìn)度條的文章就介紹到這了,更多相關(guān)Flutter 一行代碼快速實(shí)現(xiàn)你的進(jìn)度條內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Kotlin RadioGroup與ViewPager實(shí)現(xiàn)底層分頁(yè)按鈕方法
安卓的控件是挺多的,沒(méi)有辦法一個(gè)一個(gè)的來(lái)說(shuō)明,我們挑出了一些重點(diǎn)的控件,組成一些常見(jiàn)的布局,這樣以后在遇到相同功能的界面時(shí),就會(huì)有自己的思路,或者進(jìn)行復(fù)用2022-12-12Android 中RecyclerView通用適配器的實(shí)現(xiàn)
這篇文章主要介紹了Android 中RecyclerView通用適配器的實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2017-03-03Android開(kāi)發(fā)筆記 今天學(xué)到的一些屬性
離開(kāi)實(shí)驗(yàn)室之前再貼上今天下午自己學(xué)到的一些基礎(chǔ)知識(shí) 上午干嘛了呢,忙著數(shù)據(jù)恢復(fù)呢2012-11-11Android基于Flutter編寫(xiě)文件下載管理器
文件下載在很多類型的應(yīng)用中會(huì)涉及,例如音樂(lè)、文檔、包括圖片(只是圖片可以使用一些組件完成無(wú)感知的下載)。本篇介紹使用Flutter中的Dio下載方法完成文件的下載,需要的可以參考一下2022-03-03android實(shí)現(xiàn)截圖并動(dòng)畫(huà)消失效果的思路詳解
這篇文章主要介紹了android實(shí)現(xiàn)截圖并動(dòng)畫(huà)消失的思路詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06Android自定義View實(shí)現(xiàn)圓形加載進(jìn)度條
這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)圓形加載進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06Android仿外賣(mài)購(gòu)物車(chē)功能
這篇文章主要為大家詳細(xì)介紹了Android仿外賣(mài)購(gòu)物車(chē)功能的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06