Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Flutter的AnimatedContainer实现容器样式的动画切换

Flutter的AnimatedContainer实现容器样式的动画切换

原创
作者头像
早起的年轻人
修改于 2020-07-13 02:12:43
修改于 2020-07-13 02:12:43
1.2K0
举报

题记

—— 执剑天涯,从你的点滴积累开始,所及之处,必精益求精,即是折腾每一天。

重要消息


AnimatedContainer可以理解为Container Animat,也就是说带动画的容器,使用AnimatedContainer可以很方便的实现Widget的动画效果。

如下图所示的效果,默认情况下图片是一个正方形展示效果,当点击图片后,图片的宽度与高度由原来的100在1秒时间内过渡到200像素,并且变为圆形。

在这里插入图片描述
在这里插入图片描述

上图所示的效果过程就可以通过AnimatedContainer来轻松的实现,代码如下:

代码语言:txt
AI代码解释
复制
///AnimatedContainer 的基本使用
class AnimatedContainerPage extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return ClipRectPageState();
  }
}

class ClipRectPageState extends State {
  ///点击标识
  bool click = false;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: new AppBar(
        title: Text("AnimatedContainer基本使用"),
      ),
      body: Center(
        ///手势识别
        child: GestureDetector(
          onTap: () {
            setState(() {
              click = !click;
            });
          },
          ///动画容器
          child: AnimatedContainer(
            ///动画插值器
            curve: Curves.bounceInOut,
            ///容器的高度
            height: click ? 200 : 100,
            ///容器的宽度
            width: click ? 200 : 100,
            ///容器的装饰
            decoration: BoxDecoration(
              ///背景图片
                image: DecorationImage(
                  ///加载资源目录下的图片
                  image: AssetImage('assets/images/2.0x/banner4.webp'),
                  fit: BoxFit.cover,
                ),
                ///圆角
                borderRadius: BorderRadius.all(Radius.circular(
                  click ? 200 : 0,
                ))),
            ///过渡时间
            duration: Duration(milliseconds: 15000),
          ),
        ),
      ),
    );
  }
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Flutter的图片组件
通过Container的 borderRadius 和 image 的结合来设置图片的圆角:
拉维
2019/08/12
5280
Flutter的图片组件
3.Flutter学习之Image组件
学习自: Dart Flutter教程_Dart Flutter入门实战视频教程-2019年新出. Flutter之path_provider
易帜
2022/02/09
9400
3.Flutter学习之Image组件
Flutter 中 image 图片组件
1. alignment 对齐方式 。值为Alignment类型,如:Alignment.topCenter;
越陌度阡
2020/12/18
1.6K0
Flutter 中 image 图片组件
Flutter Widgets 之 AnimatedContainer
Flutter中很多用于动画的控件,这篇文章介绍动画控件AnimatedContainer,我们可以通俗的理解AnimatedContainer是带动画功能的Container,关于Container的详细介绍可以查看Flutter Widgets 之 Container,这篇详细介绍了Container的用法。
老孟Flutter
2020/09/11
8510
【Flutter 专题】129 图解 ToggleButtons 按钮切换容器组
和尚前两天刚学习了 ButtonBar 按钮容器,今天顺便学习一下 ToggleButtons 按钮切换容器组,其切换效果可以应用在日常 TabBar 切换位置;
阿策小和尚
2021/07/05
1.5K0
【Flutter 专题】129 图解 ToggleButtons 按钮切换容器组
Flutter Widgets 之 Container
Container将会是我们以后最常用的控件之一,Container是单容器类控件,即只包含一个子控件。Container可以装饰和定位子控件,例如设置背景颜色、形状等。
老孟Flutter
2020/09/11
9920
Flutter 手势处理 & Hero 动画
第一层有原始指针事件,它描述了屏幕上指针(例如,触摸,鼠标和触控笔)的位置和移动。
Flutter笔记
2019/07/24
1.9K0
Flutter 手势处理 & Hero 动画
FlutterSliverList圆角图片
在学习过程中发现,*Material组件中添加borderRadiu然后使用Stack添加图片,当图片的填充方式为BoxFit.cover时,图片会把圆角覆盖掉,也就是会溢出。
徐建国
2021/08/02
1.2K0
Flutter ShapeBorder 使用总结
ShapeBorder 用于设置形状和轮廓,比如圆形,矩形,圆角矩形等。常用于 Container 中。
徐建国
2021/08/09
2.3K0
flutter圆形相关
1、本地图片 Image.asset加载项目资源包的图片 //先将图片拷贝到项目 images 目录中,然后在 pubspec.yaml文件配置文件相对路径到 assets Image.asset( 'images/cat.jpg', width: 200, height: 200, ) Image.file加载手机内置或外置存储的图片 //加载Android平台的外置存储图片需要AndroidManifest.xml配置android.permission.READ_EXTERNAL_S
徐建国
2021/08/02
8430
flutter基础布局代码
骨灰级别的基础代码,只是做个简单的记录,方便以后看 都是用dart写的,都在flutter项目下的lib文件夹下 import 'package:flutter/material.dart'; import './tomFont.dart'; void main() { runApp( MaterialApp( theme: ThemeData( primarySwatch: Colors.yellow, ), home: Scaffold(
Tom2Code
2023/02/14
7340
flutter基础布局代码
Flutter 1.17 新 Material motion 规范的预构建动画
软件包 pub 地址:https://pub.dev/packages/animations
老孟Flutter
2020/09/11
1.2K0
Flutter 1.17 新 Material motion 规范的预构建动画
Flutter的AnimatedDefaultTextStyle实现文本样式的动画过渡切换效果
AnimatedDefaultTextStyle通过动画过渡的方式来切换文本的显示样式,如下图所示效果,当点击切换样式按钮时,显示的文本样式会以动画过渡的方式来切换。
早起的年轻人
2020/07/12
1.5K0
Flutter开发实战分析-animation_demo瞎复写总结
以下代码基本参考于 flutter_gallery中的animation_demo示例。(可以结合本文看源码)
deep_sadness
2018/08/30
2.6K0
Flutter开发实战分析-animation_demo瞎复写总结
Flutter组件学习(二)—— Image
上一节中,我们讲了 Flutter 中 Text 组件的一些用法以及 API,本节我们继续学习 Flutter 中的 Image 组件,同样先上图:
用户2802329
2018/12/21
1.5K0
【Flutter 组件集录】Card | 8 月更文挑战
卡片效果作为 Material Design 中的一员,Flutter 中 Card 组件自然是要有的。源码注释中是这么描述它的:带有轻微圆角和立面阴影的面板。本文将从源码的角度看一下 Card 组件的构成,并讲述一下 Card 在使用中的一些细小的注意点。
张风捷特烈
2022/03/18
1K0
【Flutter 组件集录】Card | 8 月更文挑战
【Flutter实战】定位装饰权重组件及柱状图案例
第一次鸦片战争,是1840年至1842年英国对中国发动的一场战争,也是中国近代史的开端。闭关锁国后的清朝逐步落后于世界大潮,但在外贸中,一直处于贸易顺差地位。 为了扭转对华贸易逆差,英国开始向中国走私毒品鸦片。1838年冬,道光帝派湖广总督林则徐为钦差大臣,赴广东查禁鸦片。英国政府以此为借口,决定派出远征军侵华,英国国会也通过对华战争的拨款案。
老孟Flutter
2020/09/11
1.4K0
【Flutter实战】定位装饰权重组件及柱状图案例
Flutter 布局备忘录 -- 多图警告,干货建议收藏
这里我将展示我在使用 Flutter 布局的代码片段。我将通过精美的代码片段结合可视化的图形来举例。
Jimmy_is_jimmy
2022/08/30
2.9K0
Flutter 布局备忘录 -- 多图警告,干货建议收藏
Flutter入门(一)
Flutter的sdk地址https://flutter.dev/docs/development/tools/sdk/releases
用户3112896
2019/12/27
7250
Flutter入门(一)
Flutter lesson 5: Flutter组件之基础组件(一)
说明:在介绍Widget的出后可能会涉及到一些属性,例如 Color, EdgeInsets等等。我会在其中穿插的说明,以后遇到这样的问题就不会再次说明。
踏浪
2019/07/31
2.2K0
Flutter lesson 5: Flutter组件之基础组件(一)
相关推荐
Flutter的图片组件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档