flutter - ListView 使 DecoratedBox 溢出 SizedBox 区域
问题描述
import 'package:flutter/material.dart';
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
//var size = MediaQuery.of(context).size;
return MaterialApp(home: Builder(builder: (_) {
var size = MediaQuery.of(_).size;
return Scaffold(
body: ListView(children: [
SizedBox(
width: size.width * 0.8,
height: size.height * 0.2,
child: DecoratedBox(decoration: BoxDecoration(color: Colors.red)),
),
]),
);
}));
}
}
void main() {
runApp(
new MyApp(),
);
}
我希望红色框是屏幕宽度的 4/5。但似乎该框跨越了整个屏幕宽度。( 对不起,我的英语不好)。
这是一个错误,还是有限制盒子大小的解决方法?我目前正在使用 Flutter 1.20.3。
解决方案
而不是使用ListView
,使用Column
或SingleChildScrollView
推荐阅读
- python - 想要一个 pandas Series of Trips Completed to count(Request) ratio for each hour 作为给定数据帧的索引
- python-3.x - 转置数据框后如何合并具有相同标签的所有列?
- java - 对象的通用参考
- vb.net - Visual Studio“未找到带有提供的指纹的证书”
- python - 跨应用程序处理来自外部 API 的网络错误
- swift - 通过按钮在新的 Web 视图中打开 PDF 文件
- arrays - 将字符串 json 转换为数组 swift
- servlets - 何时使用 servlet 以及何时使用 aem 中的服务来实现任何特定逻辑
- javascript - 如何防止弹出确认对话框暂停计时器脚本
- linux - 如何使用collectd在Linux中将系统指标从一台机器推送到另一台机器?