Flutter: обрезка текста не работает в строке - PullRequest
0 голосов
/ 07 июля 2019

У меня есть ситуация, когда в строке два текстовых элемента.Первый текст может иметь переменную длину, но я не хочу заключать текст в две строки.Поэтому мне нужно обрезать первый текст, когда для родительского элемента недостаточно ширины, и второй текст.Теперь, если я не размещаю тексты подряд, все работает как положено.Но если они в ряд, отсечение не происходит.Я не могу обернуть первый текст в расширенный виджет (который устраняет проблему отсечения), потому что он добавляет пробел между двумя текстами.Вот фрагмент кода

Container(
         child: Row (
            children: <Widget>[
               Text("Long text that needs to be clipped",
                  overflow: TextOverflow.clip,
                  textAlign: TextAlign.left),
                  //there should be no blank space between the elements
                  Text( "+1",
                      textAlign: TextAlign.left,
                      overflow: TextOverflow.fade),
                ],
              )
          )

enter image description here

Некоторое время почесал голову ...

1 Ответ

1 голос
/ 08 июля 2019

Мы можем использовать Expanded как показано ниже:

Material(
      child: Container(
          color: appColor,
          child: Row(
            children: <Widget>[
              Expanded(
                child: Align(
                  alignment: AlignmentDirectional.centerStart,
                  child: Padding(
                    padding: const EdgeInsets.only(left: 8.0),
                    child: Text(
                      "Lorem Ipsum is simply dummy text of the printing and typesetting industry.",
                      softWrap: false,
                      overflow: TextOverflow.fade,
                      style: TextStyle(color: Colors.white),
                    ),
                  ),
                ),
              ),
              IconButton(
                icon: Image.asset('assets/images/filter.png'),
                onPressed: () {},
              ),
              IconButton(
                icon: Image.asset('assets/images/notification.png'),
                onPressed: () {},
              ),
            ],
          )),
    );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...