Увеличение fluttertext в строке до достижения максимальной ширины, затем переполнение

#flutter #flutter-layout

#flutter #flutter-макет

Вопрос:

Я хотел создать следующее поведение в flutter, но я не могу понять, как это сделать. При наличии текста в строке с каким-либо другим элементом текст может иметь переменную длину. И текстовое пространство в строке должно размещаться внутри строки, если только текстовое пространство не больше, чем оставшееся пространство в строке, тогда текст должен использовать один из параметров переполнения текста. Вот диаграмма поведения с типом переполнения текста с многоточием:

Схема поведения

Я попробую использовать комбинацию виджетов row и expanded, но у меня просто не получается. Есть предложения?

Ответ №1:

Вы пробовали так:

 Row(
  children: [
    Flexible(
      child: Text("some long text", overflow: TextOverflow.ellipsis,),
    ),
    RaisedButton(
       child: Text("Button"),
    )
  ],
)
  

Комментарии:

1. Да, у него есть проблема, которая не переходит в многоточие, когда строка превышает ширину, она вызывает исключение переполнения

2. Ах, да, вы правы. Попробуйте обернуть свой текст в гибкий. (Я отредактировал приведенный выше код)