我一直在更新Flutter应用程序,用新的TextButton替换了FlatButton。但现在这个按钮不在卡片上显示。我可以点击它,它就能工作,如果我长按,你可以看到这个按钮和它的标题。
卡片小部件代码如下所示。
Card otherSwapCard(
List<FSRows?> data, int index, context, Function circularprogress) {
String? shiftDate = formatJsonDate(data[index]!.shiftDate!, 'dd/MM/yyyy');
//calculate time value string
String shiftTimes =
'${formatJsonTime24To12(data[index]!.startTime!)} - ${formatJsonTime24To12(data[index]!.finishTime!)}';
return Card(
color: Colors.white,
elevation: 3,
margin: EdgeInsets.fromLTRB(16, 4, 16, 12),
child: Container(
decoration: BoxDecoration(
border: Border(
top: BorderSide(
width: 2.0,
color: kMainColor40,
),
),
),
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Row(
children: <Widget>[
Expanded(
flex: 72,
child: Column(
children: <Widget>[
DataKeyRow(dkLabel: 'Job:', dkValue: data[index]!.jobName!),
SizedBox(height: 2),
DataKeyRow(dkLabel: 'Date:', dkValue: shiftDate!),
SizedBox(height: 2),
DataKeyRow(
dkLabel: 'Time:', dkValue: shiftTimes.toLowerCase()),
],
),
),
Expanded(
flex: 28,
child: Center(
child: TextButton(
style: ButtonStyle(
foregroundColor: MaterialStateProperty.all<Color>(Colors.blue),
),
child: Text('Fill', style: TextStyle(color: Colors.white)),
onPressed: () { },
),
),
),
],
),
),
),
);
}
3条答案
按热度按时间e7arh2l61#
Card
、TextButton
和Text
三个都是白色的。因此尝试更改Button
或Text
的颜色。更改
TextButton
颜色的步骤backgroundColor
会将TextButton的背景颜色更改为黑色,primary
会将字体颜色更改为白色,您可以相应地对其进行自定义。omhiaaxx2#
您的
Card
颜色和TextButton
文本颜色都是白色,您只需要更改其中一个。我复制了你的代码,改变了颜色,一切都很顺利。
k3fezbri3#
Card
和TextButton
都是white
颜色,因此请尝试更改代码。变更
到