Есть ли способ добавить границы в текстовом виджете, не заключая его в контейнерный виджет - PullRequest
0 голосов
/ 27 апреля 2020

введите описание изображения здесь пожалуйста, мне нужно удалить виджет контейнера и добавить радиус границы к текстовому виджету, или же можно сделать так, чтобы текстовый виджет и виджет контейнера реагировали на изменения вместе (то есть: когда текст нулевой, контейнер не должен отображаться)

   child: Container(
                     padding: EdgeInsets.fromLTRB(25.0, 0, 10.0, 0),
                     decoration: ShapeDecoration(
                     color: Colors.grey[850],
                     shape: RoundedRectangleBorder(
                     side: BorderSide(
                     width: 2.0,
                     style: BorderStyle.solid,
                     color: Colors.black,
                                        ),
                     borderRadius:
                     BorderRadius.all(Radius.circular(15.0)),
                                      ),
                                    ),
                     child: Text(
                     costOfSales,
                     style: TextStyle(
                    `enter code here` color: Colors.white,
                     fontSize: 25.0,
                                      ),
                                    )),

1 Ответ

0 голосов
/ 27 апреля 2020
Widget build(BuildContext context) {
    var costOfSales = "\$99";

    return costOfSales == null
        ? Container()
        : Container(
            padding: EdgeInsets.fromLTRB(25.0, 0, 10.0, 0),
            decoration: ShapeDecoration(
              color: Colors.grey[850],
              shape: RoundedRectangleBorder(
                side: BorderSide(
                  width: 2.0,
                  style: BorderStyle.solid,
                  color: Colors.black,
                ),
                borderRadius: BorderRadius.all(Radius.circular(15.0)),
              ),
            ),
            child: Text(
              costOfSales,
              style: TextStyle(
                color: Colors.white,
                fontSize: 25.0,
              ),
            ),
          );
  }
...