我已设置好复选框小部件,并希望在选中时将刻度线颜色更改为绿色(当前为白色)。因此,我设法通过添加主题将复选框未选中时的颜色更改为白色。我想将选定的刻度颜色更改为绿色,但是我似乎无法在主题下找到正确的选项来这样做。
代码:
Widget buildResultTile(data) {
return Theme(
data: ThemeData(unselectedWidgetColor: white),
child:
CheckboxListTile(
activeColor: transparent,
title: AutoSizeText(
data,
maxLines: 1,
style: TextStyle(
color: white,
),
),
value: _serachSelectList.contains(data),
onChanged: (bool value) {
setState(() {
if (value) {
_serachSelectList.add(data);
} else {
_serachSelectList.remove(data);
}
});
},
secondary: const Icon(Icons.account_box, color: white),
)
);
}
Run Code Online (Sandbox Code Playgroud)
未选中:
选择(我想只蜱是Colors.green):
要更改a 中复选框的填充颜色CheckboxListTile,您只需在 中设置toggleableActiveColor属性ThemeData:
ThemeData(
// ... other theme values ...
toggleableActiveColor: Colors.green
)
Run Code Online (Sandbox Code Playgroud)
不幸的是,更改刻度线的颜色是不可能的,CheckboxListTile因为它不会公开checkColor其Checkbox小部件的属性,因此您只能滚动自己的列表图块。
您可以使用checkColorCheckboxListTile-Widget 的属性来设置复选标记的颜色:
CheckboxListTile(
checkColor: Colors.black54, //sets checkmark color
// ... other properties ...
)
Run Code Online (Sandbox Code Playgroud)
(参见https://github.com/flutter/flutter/pull/37636)
要更改复选框的填充颜色,请参阅 Magnus 的答案/sf/answers/3985907761/
| 归档时间: |
|
| 查看次数: |
4808 次 |
| 最近记录: |