TextOverFlow颤振

时间:2020-04-30 18:37:11

标签: flutter dart

我有一个特定的Text小部件,当它溢出时,我有3个选项。淡入淡出,可见,省略号或剪辑。但是我不想在他们之间选择。我想如果文本溢出,则不显示该文本。

编辑: 我正在为此design

创建代码克隆

假设textStyle为未知。 我该如何实现?

代码:

Load

2 个答案:

答案 0 :(得分:1)

要模仿设计,您可能需要使用Stack小部件来研究。但是,要回答您的问题,您需要将softWrap设置为false

Align(
  alignment: Alignment.topLeft,
  child: SizedBox(
    width: 100,
    child: Text(
      'Some text we want to overflow',
      softWrap: false,
    ),
  ),
)

softWrap确实是这里的关键。虽然,我添加了AlignSizedBox小部件以允许在任何位置使用它,而不管您使用的是哪个父小部件(因为某些小部件对其子级设置了严格的约束,并将覆盖其子级的大小首选项)。

CodePen Example

编辑:2020年5月6日

随着Flutter v1.17的发布,您现在可以访问名为NavigationRail的新Widget,它可以帮助您进行所需的设计。

Navigation Rail Example

答案 1 :(得分:0)

使用三元运算符检查要传递给“文本”小部件的文本的长度,并基于该长度传递文本本身或空字符串。

String yourText;
int desiredLengthToShow = 10; //Change this according to you.
...
Text(
  child: yourText.length > desiredLengthToShow ? "" : yourText,
);