sized_box_shrink_expand
使用 'SizedBox.{0}' 来避免指定 'height' 和 'width'。
描述
#当 SizedBox
构造函数调用中将 height
和 width
的值都指定为 0.0
或 double.infinity
时,分析器会生成此诊断消息。
示例
#以下代码会生成此诊断消息,因为 height
和 width
都是 0.0
。
dart
import 'package:flutter/material.dart';
Widget build() {
return SizedBox(
height: 0.0,
width: 0.0,
child: const Text(''),
);
}
以下代码会生成此诊断消息,因为 height
和 width
都是 double.infinity
。
dart
import 'package:flutter/material.dart';
Widget build() {
return SizedBox(
height: double.infinity,
width: double.infinity,
child: const Text(''),
);
}
常见修复方法
#如果两者都是 0.0
,则使用 SizedBox.shrink
。
dart
import 'package:flutter/material.dart';
Widget build() {
return SizedBox.shrink(
child: const Text(''),
);
}
如果两者都是 double.infinity
,则使用 SizedBox.expand
。
dart
import 'package:flutter/material.dart';
Widget build() {
return SizedBox.expand(
child: const Text(''),
);
}