我正在創建一個類似復選框的自定義小部件,它使用Card. 如果值相同,我可以改變顏色onTap。但是,我希望它過渡顏色而不是突然改變。
這是我的代碼:
return Card(
color: selected ? AppColors.primary : AppColors.primaryLight,
我對 Flutter 中的影片比較陌生,但是由于對前端/CSS 有很強的理解,我可以實作這樣的事情的方法是添加transitionCSS 屬性——在 Flutter 中是否有類似的東西?如果沒有,有人可以指出我正確的方向嗎?
uj5u.com熱心網友回復:
我會做的是,而不是使用Card小部件,我會使用一個AnimatedContainer和你的顏色引數相同的條件。當selected值發生變化時,您將獲得平滑過渡。但是,您可能還需要添加boxShadow以具有與Card
AnimatedContainer(
duration: const Duration(milliseconds: 700),
curve: Curves.easeInOut,
decoration:BoxDecoration(
boxShadow: [
BoxShadow(
color: Colors.black,
blurRadius: 5,
spreadRadius: 5,
offset: Offset(0, 2),
),
],
color: selected ? AppColors.primary : AppColors.primaryLight,
),
)
uj5u.com熱心網友回復:
一種方法是使用AnimatedContainer
return Card(
child: AnimatedContainer(
duration: const Duration(milliseconds: 1000),
height: 200,
width: 200,
color: selected ? Colors.red : Colors.blue,
child: FooWidget(),
),
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/377560.html
下一篇:Flutter例外無法決議com.google.android.gms:play-services-location:16.
