#flutter #flutter-layout
#flutter #flutter-layout
Вопрос:
В isThreeLine
есть свойство, вызываемое в SwitchListTile
. Я хотел бы установить его значение в true
, только если мой субтитр имеет длину в две или более строк. Откуда я это знаю?
SwitchListTile(
value: true,
title: Text('Title'),
subtitle: Text('This is going to be a subtitle which is two lines long with isThreeLine: true'),
isThreeLine: false, // only set it to true when my subtitle is 2 or more lines long.
onChanged: null,
)
Примечание: я не ищу никаких обходных путей, таких как игра с общей длиной строки и т.д.
Комментарии:
1. С какой проблемой вы сталкиваетесь при его нормальном поведении?
2. @PratyushTiwari Как вы можете видеть, если мой субтитр длиннее строки, у меня остается очень мало места, но когда я устанавливаю
isThreeLine: true
, это выглядит хорошо.3. Если вы ищете готовое решение, которое будет творить «магию» «игры» за вас, то нет, afaik, такого нет, хех. Если вы хотите «поиграть», вы можете взглянуть на LineMetrics и на эту статью о medium. Если это вам не по вкусу, то я предлагаю либо использовать SwitchListTile как есть, либо подойти к проблеме по-другому (например, вместо этого использовать столбец, строку, переключать, выравнивать и т.д.), Будет больше кода, но это цена за то, чтобы получить его именно таким, как вы хотите.