我想在视图中显示大量筹码,并在其中显示文本。由于数量很多,我想将芯片的尺寸减小到最小。特别是芯片的高度。如何才能做到这一点?
for (EPDiaryTarget target in widget.item.targetList) {
Chip chip = new Chip(
label: new Text(
target.name,
overflow: TextOverflow.ellipsis,
style: new TextStyle(color: Colors.white),
),
backgroundColor: const Color(0xFFa3bdc4),
);
studentsChips.add(chip);
}
Run Code Online (Sandbox Code Playgroud)
我已经提供padding: new EdgeInsets.fromLTRB(5.0, 0.0, 5.0, 0.0),了该芯片,但是其默认大小并未减小。是否可以将具有所需尺寸的自定义形状赋予芯片?如果是这样,怎么办?在此先感谢大家。
Arn*_*bac 22
现在您可以使用 VisualDensity ( https://api.flutter.dev/flutter/material/VisualDensity-class.html ),它是一个介于 -4 和 4 之间的双精度值 ([VisualDensity.minimumDensity], [VisualDensity.maximumDensity] )
che*_*ins 10
您可以将芯片包装在Transform小部件中并按以下方式缩放比例:
Transform(
transform: new Matrix4.identity()..scale(0.8),
child: new Chip(
label: new Text(
"Chip",
overflow: TextOverflow.ellipsis,
style: new TextStyle(color: Colors.white),
),
backgroundColor: const Color(0xFFa3bdc4),
),
),
Run Code Online (Sandbox Code Playgroud)
Ale*_*kiy 10
包装标签:Text('chip') in Container 或 SizedBox。
Chip(
label: Container(
width: 100,
height: 40,
child: Text('chip'),
),
)
Run Code Online (Sandbox Code Playgroud)
小智 5
您需要设置materialTapTargetSize. 默认值为MaterialTapTargetSize.padded,将芯片的 minHeight 设置为 48px。将其设置MaterialTapTargetSize.shrinkWrap为删除多余的空间。
Chip(
...,
materialTapTargetSize: MaterialTapTargetSize.shrinkWrap
)
| 归档时间: |
|
| 查看次数: |
2812 次 |
| 最近记录: |