【问题标题】:How can i fade in widgets when the screen loads using Flutter? [closed]使用 Flutter 加载屏幕时如何淡入小部件? [关闭]
【发布时间】:2020-10-02 05:24:33
【问题描述】:

它是一个登录页面,我希望当我加载我的屏幕时,我的所有小部件都应该顺利淡入

【问题讨论】:

标签: flutter flutter-animation


【解决方案1】:

嘿你看看Animated Opacity 使用这个你可以实现淡入淡出

示例片段:

    class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  double widget1Opacity = 0.0;
  

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    Future.delayed(Duration(milliseconds: 300), () {
      widget1Opacity = 1;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: AnimatedOpacity(
            opacity: widget1Opacity,
            duration: Duration(seconds: 3),
            child: FlutterLogo(
              size: 200,
              style: FlutterLogoStyle.markOnly,
            )),
      ),
    );
  }
}

【讨论】:

  • 必须加上 setState (() {});在 widget1Opacity = 1;使用淡入淡出动画显示小部件
猜你喜欢
  • 2022-01-01
  • 2020-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-31
  • 2019-06-21
  • 2023-04-11
  • 2023-03-03
相关资源
最近更新 更多