#flutter
#flutter
Вопрос:
Я пытаюсь использовать TextOverflow.Многоточие, чтобы убедиться, что некоторые текстовые данные не вызывают ошибку переполнения. Единственная проблема в том, что, похоже, он не работает должным образом для меня. Я добавляю свойство, но текст не сокращается и по-прежнему вызывает ошибку переполнения. У кого-нибудь есть представление о том, почему это происходит и как это исправить?
Вот как это выглядит в настоящее время. Даже с добавлением многоточия.
Это код, который отображает все это.
Expanded(
flex: 3,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: EdgeInsets.only(top: 13, left: 10),
child: Row(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
Text(mileage[index].trippurpose,
style: TextStyle(
fontSize: 15,
fontWeight: FontWeight.bold,
color: Colors.black,
fontFamily: 'Montserrat'),
overflow: TextOverflow.ellipsis,
softWrap: false,
textAlign: TextAlign.center)
],
)),
Padding(
padding: EdgeInsets.only(left: 10),
child: Row(
children: [
Text(
'${mileage[index].tripfrom} - ',
style: TextStyle(
color: Colors.black,
fontStyle: FontStyle.italic),
),
Padding(
padding: EdgeInsets.only(right: 36),
child: Text(
mileage[index].tripto,
overflow: TextOverflow.ellipsis,
style: TextStyle(
color: Colors.black,
fontStyle: FontStyle.italic
),
),
)
],
),
),
],
),),
Комментарии:
1. незначительные изменения внутри вашего
Row()
просто оберните вашText
виджетExpanded
родительским виджетом2. Первая строка работала как мечта. Хотя, похоже, для второй строки это мало что дало. Я применил его к тексту mileage[index].tripto, поскольку именно там, я думаю, он начнет переполняться для этой строки, и он по-прежнему говорит о переполнении.
Ответ №1:
Во-первых, я бы всегда добавлял maxLines: 1
свойство к Text
виджету в такого рода макетах.
Затем…
-
Если вы можете, попробуйте удалить
Row
виджет. -
Если вы не можете удалить
Row
виджет, обернитеRow
виджетExpanded
виджетом вокруг.