如何更改卡片上的文本颜色

时间:2020-11-08 21:13:26

标签: flutter colors card

我从Flutter开始,我正在尝试改进Todo App,我需要更改子卡中文本的颜色,以便使其可读。找不到我成功放入代码中的任何解决方案。这是带有文字的卡片的实现部分。

 Widget _buildTodoList() {
return new ListView.builder(
  itemBuilder: (context, index) {
    if (index < _todoItems.length) {
      //return  _buildTodoItem(_todoItems[index], index);
      final item = _todoItems[index];
      return Dismissible(
          key: Key(item),
          onDismissed: (direction) {
            setState(() {
              _todoItems.removeAt(index);
            });
            Scaffold.of(context).showSnackBar(
                SnackBar(content: Text("$item  a été supprimé")));
          },
          background: Container(color: Colors.red),
          child: Container(
              margin: const EdgeInsets.all(7.0),
              child: Card(
                  child: ListTile(title: Text("$item")),
                  color: Colors.blueGrey[900],
                  shape: RoundedRectangleBorder(
                    borderRadius: BorderRadius.circular(10.0),
                  ))));
    }
  },
);

} 我想将项目的文本设为白色。预先谢谢你!

2 个答案:

答案 0 :(得分:0)

您可以通过在文本小部件中为样式指定颜色属性来设置文本的颜色。请查看代码

Card(
                  child: ListTile(title: Text("$item", style:TextStyle(color: Colors.white)),
                  color: Colors.blueGrey[900],
                  shape: RoundedRectangleBorder(
                    borderRadius: BorderRadius.circular(10.0),
                  ))));

答案 1 :(得分:0)

您只需将样式添加到“文本”小部件中,如下所示:


Widget _buildTodoList() {
return new ListView.builder(
 itemBuilder: (context, index) {
   if (index < _todoItems.length) {
     //return  _buildTodoItem(_todoItems[index], index);
     final item = _todoItems[index];
     return Dismissible(
         key: Key(item),
         onDismissed: (direction) {
           setState(() {
             _todoItems.removeAt(index);
           });
           Scaffold.of(context).showSnackBar(
               SnackBar(content: Text("$item  a été supprimé")));
         },
         background: Container(color: Colors.red),
         child: Container(
             margin: const EdgeInsets.all(7.0),
             child: Card(
                 child: ListTile(title: Text("$item", style:TextStyle(color: Colors.red))),
                 color: Colors.blueGrey[900],
                 shape: RoundedRectangleBorder(
                   borderRadius: BorderRadius.circular(10.0),
                 ))));
   }
 },
);