Как обернуть текстовый виджет флаттера внутри степпера? - PullRequest
0 голосов
/ 05 декабря 2018

Как я могу обернуть текстовый виджет внутри субтитра с пошаговым виджетом ?, Вот некоторые попытки, которые я сделал безуспешно:

return Scaffold(
    body: Stepper(
    steps: [
      Step(
          title: Text("fake title"),
          subtitle: Text(
            "This text should be only one line, if flutter is showing an error and you are tired of trying to find a solution, start praying.",
            overflow: TextOverflow.ellipsis,
            maxLines: 1,
            softWrap: true,
          ),
          content: Text("fake content")),
    ],
));

И с расширяемым или гибким виджетом:

return Scaffold(
    body: Stepper(
  steps: [
    Step(
        title: Text("fake title"),
        subtitle: Column(
          mainAxisAlignment: MainAxisAlignment.start,
          crossAxisAlignment: CrossAxisAlignment.start,
          children: <Widget>[
            Expanded(
              child: Row(
                crossAxisAlignment: CrossAxisAlignment.stretch,
                children: <Widget>[
                  Text(
                    "This text should be only one line, if flutter is showing an error and you are tired of trying to find a solution, start praying.",
                    overflow: TextOverflow.ellipsis,
                    maxLines: 1,
                    softWrap: true,
                  ),
                ],
              ),
            )
          ],
        ),
        content: Text("fake content")),
  ],
));

Единственным способом, которого я достиг, было использование виджета «Контейнер», но мне пришлось указать фиксированную ширину, чтобы он не реагировал.

1 Ответ

0 голосов
/ 05 декабря 2018

Я обнаружил, что есть поле / отступ, как 84.0 (не совсем), где вы можете использовать для установки ширины, как этот код:

        @override
          Widget build(BuildContext context) {
            return Scaffold(body: LayoutBuilder(
              builder: (context, constraints) {
                return Stepper(
                  steps: [
                    Step(
                      title: Text("fake title"),
                      subtitle: SizedBox(
                        width: constraints.maxWidth - 84,
                        child: Text(
                          "This text should be only one line, if flutter is showing an error and you are tired of trying to find a solution, start praying.",
                          overflow: TextOverflow.ellipsis,
                          maxLines: 2,
                        ),
                      ),
                      content: Text("fake content"),
                    ),
                  ],
                );
              },
            ));
          }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...