志在巔峰的攀登者,不會陶醉在沿途的某個腳印之中,在碼農的世界里,優美的應用體驗,來源于程式員對細節的處理以及自我要求的境界,年輕人也是忙忙碌碌的碼農中一員,每天、每周,都會留下一些腳印,就是這些創作的內容,有一種執著,就是不知為什么,如果你迷茫,不妨來瞅瞅碼農的軌跡,
如果你有興趣 你可以關注一下公眾號 biglead 來獲取最新的學習資料,
- Flutter 從入門 到精通系列文章在這里
- 當然也必需是要有原始碼的 在這里了
- github 有點慢 不妨來看看碼云的原始碼吧
- 系列學習教程在這里
Flutter 用來快速開發 Android iOS平臺應用,在Flutter 中,通過 ColorTween 來實作顏色過渡影片效果

程式入口
main() {
runApp(MaterialApp(
//不顯示 debug標簽
debugShowCheckedModeBanner: false,
//顯示的首頁面
home: DemoColorTweenPage(),
));
}
Demo 實體頁面
class DemoColorTweenPage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<DemoColorTweenPage>
with SingleTickerProviderStateMixin {
late AnimationController _animationController;
late Animation _animation;
@override
void initState() {
// TODO: implement initState
super.initState();
//創建影片控制器
_animationController = new AnimationController(
vsync: this,
duration: Duration(milliseconds: 1000),
);
//添加影片執行重繪監聽
_animationController.addListener(() {
setState(() {});
});
//添加影片狀態監聽
_animationController.addStatusListener((status) {
//獲取影片執行狀態
AnimationStatus status = _animationController.status;
//影片正向執行完成狀態
if (status == AnimationStatus.completed) {
//反向開啟影片
_animationController.reverse();
} else if (status == AnimationStatus.dismissed) {
//影片初始未執行或者是影片反向執行完成
//正向開始執行影片
_animationController.forward();
}
});
//顏色影片變化
_animation = ColorTween(begin: Colors.blue, end: Colors.red)
.animate(_animationController);
//添加到事件佇列
Future.delayed(Duration.zero, () {
_animationController.forward();
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("Tween")),
body: Center(
child: Container(
width: 200,
height: 200,
color: _animation.value,
),
),
);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/297612.html
標籤:其他
上一篇:【Flutter】應用開發筆記
下一篇:iOS底層學習——KVC
