Opacity Widget

作者: imuzi | 来源:发表于2019-01-10 21:19 被阅读9次

一般情况下,要移除界面中的某和控件只需要将控件代码删除即可,但是如果希望控件隐藏,但是控件之间占的位置依然保留,就需要使用Opacity来进行包裹.
并且还可以使用AnimatedOpacity添加动画,只需要加一个时长,在重新渲染时就会有一个渲染动画.是不是很酷呢.

import 'package:flutter/material.dart';

class GoogleOpacity extends StatefulWidget {
  @override
  GoogleOpacityState createState() => new GoogleOpacityState();
}

class GoogleOpacityState extends State<GoogleOpacity> {
  double _opacity = 1.0;

  @override
  Widget build(BuildContext context) {
    return Row(
      children: <Widget>[
        Column(
          children: <Widget>[
            Container(
              width: 100.0,
              height: 100.0,
              color: Colors.red,
            ),
            Container(
              width: 100.0,
              height: 100.0,
              color: Colors.green,
            ),
            Container(
              width: 100.0,
              height: 100.0,
              color: Colors.blue,
            ),
          ],
        ),
        Column(
          children: <Widget>[
            Container(
              width: 100.0,
              height: 100.0,
              color: Colors.blue,
            ),
            Opacity(
              opacity: 0.0,
              child: Container(
                width: 100.0,
                height: 100.0,
                color: Colors.green,
              ),
            ),
            Container(
              width: 100.0,
              height: 100.0,
              color: Colors.red,
            ),
          ],
        ),
        Stack(
          children: <Widget>[
            Container(
              width: 200.0,
              height: 200.0,
              child: Image.network(
                  'http://img2.imgtn.bdimg.com/it/u=2755523882,2215399258&fm=200&gp=0.jpg'),
            ),
            AnimatedOpacity(
              duration: Duration(seconds: 1),
              opacity: _opacity,
              child: Container(
                width: 200.0,
                height: 200.0,
                color: Colors.blue,
              ),
            ),
          ],
        ),
      ],
    );
  }
  @override
  void initState() {
    // TODO: implement initState
    super.initState();

    Future.delayed(Duration(seconds: 1), (){
      setState(() {
        _opacity = 0.0;
      });
    });
  }
}

我的博客
代码github

相关文章

  • Flutter Opacity 使用介绍

    Opacity class介绍 Opacity class是个widget控件,它可以改变子widget的透明度。...

  • Opacity Widget

    一般情况下,要移除界面中的某和控件只需要将控件代码删除即可,但是如果希望控件隐藏,但是控件之间占的位置依然保留,就...

  • Flutter Widget 005: Opacity

    1.概要 当我们要移除一个Widget,如图所示中间蓝色的Widget时, 可以直接在代码里面删掉对应Widget...

  • Flutter Opacity Offstage Visibil

    Opacity 当设置透明度为0时,不展示,但在Widget Tree中存在。如果不可见的时候需要占用大小,将al...

  • CSS opacity的兼容写法

    CSS opacity的兼容写法 { opacity:0.5; filter:alpha(opacity=5...

  • css3

    opacity: 0.1兼容IE10opacity: 0.5;filter:alpha(opacity=50) t...

  • CSS背景透明度

    opacity:1;----这是不透明opacity:0;----这是全透明opacity:0.7;----这是透...

  • css:1.颜色及背景的方法

    颜色定义: opacity 透明度的属性 rgba()和opacity都能实现透明效果但是opacity是...

  • CSS隐藏页面元素的方法

    .hide-opacity{opacity:0;}复制代码 通过下面的gif图,我们可以总结opacity隐藏元素...

  • HTML透明度样式filter和opacity

    HTML透明度样式filter和opacity opacity属性   opacity是CSS3的属性, 能够元...

网友评论

    本文标题:Opacity Widget

    本文链接:https://www.haomeiwen.com/subject/osezrqtx.html