flutter - Image BoxFit.cover 未正确应用
问题描述
我正在尝试使用以下代码用 4 个相等大小的图像(2x2)填充整个屏幕:
import 'package:flutter/material.dart';
void main() => runApp(_MyApp());
class _MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Column(
children: [
Expanded(
child: Row(
children: [
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
),
),
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
),
),
],
),
),
Expanded(
child: Row(
children: [
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
),
),
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
),
),
],
),
),
],
),
),
);
}
}
我怎样才能修复我的代码来做到这一点?所以每个图像的大小都与其他图像相同,并且查看为 2X2
解决方案
您可以应用每个图像height: double.infinity
以使图像具有尽可能多的高度:
import 'package:flutter/material.dart';
void main() => runApp(_MyApp());
class _MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Column(
children: [
Expanded(
child: Row(
children: [
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
height: double.infinity,
),
),
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
height: double.infinity,
),
),
],
),
),
Expanded(
child: Row(
children: [
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
height: double.infinity,
),
),
Expanded(
child: Image.network(
'https://static01.nyt.com/images/2020/06/30/business/30india-tech-1/30india-tech-1-articleLarge.jpg?quality=75&auto=webp&disable=upscale',
fit: BoxFit.cover,
height: double.infinity,
),
),
],
),
),
],
),
),
);
}
}
推荐阅读
- ruby - 找出数组中有多少元素包含数字
- firebase - Firebase/Firestore 未正确刷新数据
- javascript - 如何让用户输入在点击事件的函数中运行?
- php - 如何将简单的文件路径数组转换为表示 PHP 中文件层次结构的嵌套数组?
- excel - 如何格式化大型数据集的单列中的选择单元格
- c++ - 如何将项目共享“系统调用”作为单例对象构建和链接到引导加载程序?
- python - 将 csv 文件编号转换为书面段落?
- jquery - 删除元素后简单的按钮功能停止
- java - jar与项目本地文件的通信
- reactjs - 响应式 React Playgrond:与 iframe 共享状态