@override
Widget build(BuildContext context) {
return Container(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Row(
children: [
CircleAvatar(),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(title, overflow: TextOverflow.ellipsis),
Text(part),
],
),
],
),
ElevatedButton(onPressed: () {}, child: Text('btn')),
],
),
);
}
文本小部件的溢出属性不起作用。
用flexible和expanded Package 小部件也不起作用。
当一行中有另一行时,我应该如何处理文本溢出?
我想要的是文本更长,这样当它遇到一个按钮时,...文本在按钮前面处理。
第一次
用flexible Package 行小部件不起作用。
@override
Widget build(BuildContext context) {
return Container(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Flexible(
child: Row(
children: [
CircleAvatar(),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(title, overflow: TextOverflow.ellipsis),
Text(part),
],
),
],
),
),
ElevatedButton(onPressed: () {}, child: Text('btn')),
],
),
);
}
第二次
如果我用Wrap小部件替换Row within a Row,然后用Flexible Package Wrap小部件,则文本将被推到底线。
@override
Widget build(BuildContext context) {
return Container(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Flexible(
child: Wrap(
children: [
CircleAvatar(),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(title, overflow: TextOverflow.ellipsis),
Text(part),
],
),
],
),
),
ElevatedButton(onPressed: () {}, child: Text('btn')),
],
),
);
}
2条答案
按热度按时间xdnvmnnf1#
您需要用
Expanded
Package 内部的Row
和Column
以获得可用空间(约束)。关于ayout/constraints
mv1qrgav2#
你不需要两行,使用以下代码:
结果: