flutter Stack 绝对布局的使用
使用stack 和Positioned
实现绝对布局 进行位置偏移
Container(
alignment: Alignment.center,
width: double.infinity,
child: Stack(
clipBehavior: Clip.none,
alignment: Alignment.center,
children: [
Container(
width: 40,
height: 40,
margin: EdgeInsets.fromLTRB(0, 0, 90, 0),
decoration: BoxDecoration(
border: Border.all(width: 2,color: Colors.white),
borderRadius: BorderRadius.circular(20)),
child: ClipRRect(
borderRadius: BorderRadius.all(Radius.circular(20)),
child: CachedNetworkImage(
//图片缓存
imageUrl:
'http://img.crcz.com/allimg/202002/29/1582979072845574-lp.jpg',
progressIndicatorBuilder:
(context, url, downloadProgress) =>
CircularProgressIndicator(
value: downloadProgress.progress),
errorWidget: (context, url, error) =>
Icon(Icons.error),
),
),
), Positioned(
left: 30,
child: Container(
width: 40,
height: 40,
decoration: BoxDecoration(
border: Border.all(width: 2,color: Colors.white),
borderRadius: BorderRadius.circular(20)),
child: ClipRRect(
borderRadius: BorderRadius.all(Radius.circular(20)),
child: CachedNetworkImage(
//图片缓存
imageUrl:
'https://img2.woyaogexing.com/2021/01/27/76d0ec1087f944d286031185a97ab13b!400x400.jpeg',
progressIndicatorBuilder:
(context, url, downloadProgress) =>
CircularProgressIndicator(
value: downloadProgress.progress),
errorWidget: (context, url, error) =>
Icon(Icons.error),
),
),
),
),
Positioned(
left: 60,
child: Container(
width: 40,
height: 40,
decoration: BoxDecoration(
border: Border.all(width: 2,color: Colors.white),
borderRadius: BorderRadius.circular(20)),
child: ClipRRect(
borderRadius: BorderRadius.all(Radius.circular(20)),
child: CachedNetworkImage(
//图片缓存
imageUrl:
'https://img2.woyaogexing.com/2021/01/27/e964deb7eadb437aad814b1ee46a8c50!400x400.jpeg',
progressIndicatorBuilder:
(context, url, downloadProgress) =>
CircularProgressIndicator(
value: downloadProgress.progress),
errorWidget: (context, url, error) =>
Icon(Icons.error),
),
),
),
),
Positioned(
left: 90,
child: Container(
width: 40,
height: 40,
decoration: BoxDecoration(
border: Border.all(width: 2,color: Colors.white),
borderRadius: BorderRadius.circular(20)),
child: ClipRRect(
borderRadius: BorderRadius.all(Radius.circular(20)),
child: CachedNetworkImage(
//图片缓存
imageUrl:
'https://img2.woyaogexing.com/2021/01/26/4e4643708cb7430aafecf59574beea5e!400x400.jpeg',
progressIndicatorBuilder:
(context, url, downloadProgress) =>
CircularProgressIndicator(
value: downloadProgress.progress),
errorWidget: (context, url, error) =>
Icon(Icons.error),
),
),
),
),
],
),
),
flutter Stack 绝对布局的使用的更多相关文章
- 聊聊flutter的UI布局
UI布局多半是套路,熟悉套路的规则. Flutter的UI布局也有一套规则 center center可以让任何元素在屏幕中居中,既是水平居中又是垂直居中,如果想让元素从上而下排列要怎么办呢?那就得使 ...
- 技术胖Flutter第三季-18布局CardWidget 卡片布局组件
技术胖Flutter第三季-18布局CardWidget 卡片布局组件 博客地址: https://jspang.com/post/flutter3.html#toc-420 最外面是Card布局,里 ...
- 在Flutter中构建布局
这是在Flutter中构建布局的指南.首先,您将构建以下屏幕截图的布局.然后回过头, 本指南将解释Flutter的布局方法,并说明如何在屏幕上放置一个widget.在讨论如何水平和垂直放置widget ...
- Flutter Stack布局中定位的方式
前言 想要记录一下Stack布局中,定位的两种方式 代码 //……省略无关代码…… child: new Column( children: <Widget>[ new SizedBox( ...
- 技术胖Flutter第三季-17布局PositionedWidget层叠定位组件
博客地址: https://jspang.com/post/flutter3.html#toc-d7a 把我们上节的 Container的部分代码去掉. 使用:Positioned 有点像css里面的 ...
- Flutter——Stack组件(层叠组件)、Align组件、Positioned组件
Stack 表示堆的意思,我们可以用 Stack 或者 Stack 结合 Align 或者 Stack 结合 Positiond 来实现页面的定位布局. Stack组件 常用于两个子元素. Stack ...
- flutter stack嵌套,appbar透明,Container设置背景图片并且图片在appbar之下
stack嵌套 一般情况下 stack是无法嵌套,出现stack嵌套,布局就会出乱 解决方式:就是第二个stack需要确定宽高 appbar透明 AppBar( backgroundColor: Co ...
- flutter stack
import 'package:flutter/material.dart'; void main() { runApp(MaterialApp(home: new MyApp())); } clas ...
- 技术胖Flutter第三季-14布局RowWidget的详细讲解
flutter总的地址: https://jspang.com/page/freeVideo.html 视频地址: https://www.bilibili.com/video/av35800108/ ...
- flutter GridView 网格布局
当数据量很大的时候用矩阵方式排列比较清晰.此时我们可以用网格列表组件 GridView 实 现布局. GridView 创建网格列表有多种方式,常用有以下两种. 1.可以通过 GridView.cou ...
随机推荐
- VeryCapture V1.8.9.5 中文版安装使用教程
VeryCapture简介 VeryCapture中文版是一款实用的屏幕捕捉工具.VeryCapture最新版持将图钉在桌面.这个功能可以方便图片对比,在写论文或者写文章时比较方便.VeryCaptu ...
- .NET List集合对比差异,Get,Post请求
1.键值排序 Dictionary<int, List<string>> dic = new Dictionary<int, List<string>> ...
- 面试必问:JVM 如何确定死亡对象?
在 JVM 中,有两个非常重要的知识点,一个是 JVM 的内存布局(JVM 运行时的数据区域),另一个就是垃圾回收.而垃圾回收中又有两个重要的知识点,一个是如何确定 JVM 中的垃圾对象,另一个是使用 ...
- Channel和Stream的单双向问题
stream分为input和output,为单向. channel为双向,可以write也可以read,但是通过inputstream或者outputstream获取的channle并不能实现双向的数 ...
- voxel体素网络滤波器
1.简介 在进行建图的时候,由于多个视角内存在视野重叠,即多个摄像头看到同样的像素点,这样在重叠区域内会存在大量的位置十分相近的点,这会占用很多内存空间.体素网络滤波保证了在某个一定大小的立方体内只有 ...
- 2020.11.30【NOIP提高A组】模拟
总结与反思 很不幸,估分 \(170\),可惜 \(T2\) 暴力 \(50pts\) 全掉了 \(T1\) 结论题,如果想到了,\(O(n)\) 过,只有十几行代码 感觉不好想,不过还是 \(A\) ...
- 计网学习笔记二 Link Layer Service
在上一周的计网学习了network和Internet的总论.在这一周开始的未来几讲将集中在链路层link layer,并且会有相应的计网lab完成.在这一讲中,我们主要关注链路层提供的服务. 课程资料 ...
- 利用自定义ref实现防抖
1. debounce.js import { customRef } from 'vue'; export function debounceRef(value, delay = 1000) { l ...
- codeforce D. Concatenated Multiples
http://codeforces.com/contest/1029/problem/D 看C题的第一眼就觉得自己一定能做出来,结果就兴致勃勃地做了一天,最后做出来了.但看到这道题时,第一感觉就是&q ...
- Echarts 环形图 每项之间有间隙
option = { tooltip: { trigger: 'item' }, legend: { top: '5%', left: 'center', textStyle:{ color:'#ff ...