如何在颤振中更改扩展磁贴的标题文本样式?



我正在做一个应用程序。

我想自定义扩展窗口小部件。
在正常情况下,当展开贴图时,它的标题颜色变为蓝色。
我想把它改成粗体。

return ExpansionTile(
textColor: Colors.black,
title: Text(_fencingClubDataList[index].Name),
expandedAlignment: Alignment.centerLeft,
expandedCrossAxisAlignment:
CrossAxisAlignment.start,
children: [
Table(
border: TableBorder.all(color: Colors.black),
defaultVerticalAlignment:
TableCellVerticalAlignment.top,
children: [
TableRow(children: [
Text("This is"),
Text("a sample."),
]),
],
),
],
);

我知道你可以通过使用textColor属性来改变扩展tile的颜色。
有没有办法像这样改变它的文本样式?

谢谢,

试试下面的代码。

bool isExpand = false;
@override
Widget build(BuildContext context) {
return Scaffold(
body: ExpansionTile(
onExpansionChanged: (bool isExapnd) {
setState(() {
isExpand = isExapnd;
});
},
textColor: Colors.black,
title: Text(
"Title",
style: TextStyle(
fontWeight: isExpand ? FontWeight.bold : FontWeight.normal),
),
expandedAlignment: Alignment.centerLeft,
expandedCrossAxisAlignment: CrossAxisAlignment.start,
children: [
Table(
border: TableBorder.all(color: Colors.black),
defaultVerticalAlignment: TableCellVerticalAlignment.top,
children: [
TableRow(children: [
Text("This is"),
Text("a sample."),
]),
],
),
],
),
);
}
bool _customTileExpanded = false;
ExpansionTile(
title: Text('ExpansionTile 2', style: TextStyle(fontWeight: _customTileExpanded ? FontWeight.bold : FontWeight.normal)),
subtitle: const Text('Custom expansion arrow icon'),
children: const <Widget>[
ListTile(title: Text('This is tile number 2')),
],
onExpansionChanged: (bool expanded) {
setState(() => _customTileExpanded = expanded);
},
)

现在使用这个bool变量_customTileExpanded,您可以随心所欲地设置样式。您可以在这里找到更多信息ExpansionTile

最新更新