我在我的项目中使用Button主题,无法更改背景颜色,文本颜色,也无法降低按钮主题的高度,有人可以查看它吗。
这是我的代码:
Widget _signInButton() {
return ButtonTheme(
minWidth: 325,
child: OutlineButton(
splashColor: Colors.grey,
onPressed: () {
signInWithGoogle().whenComplete(() {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) {
return FirstScreen();
},
),
);
});
},
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(40)),
highlightElevation: 0,
borderSide: BorderSide(color: Colors.grey),
child: Padding(
padding: const EdgeInsets.fromLTRB(0, 10, 0, 10),
child: Row(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Flexible(
flex: 1,
child: Image(image: AssetImage("Assets/google_logo.png"), height: 35.0)),
Expanded(
flex: 1,
child: Padding(
padding: const EdgeInsets.only(left: 10),
child: Text(
'Sign in with Google',
style: TextStyle(
fontSize: 15,
color: Colors.grey,
答案 0 :(得分:2)
尝试在height: 8.0
中添加layoutBehavior:ButtonBarLayoutBehavior.constrained
或ButtonTheme
。
使用这些选项中的任何一个,您都可以调整按钮的高度和填充。
注意:根据需要调整高度值。我已将其设置为8.0
您可以使用buttonColor
中的ButtonTheme
属性来更改按钮的颜色。或“子按钮”中的color
属性应该可以完成工作。
但是,由于您使用的是OutlineButton
,因此它无法工作,因为它没有可以在上面绘制颜色的区域,它只有一个轮廓。
注意:
您应将OutlineButton
替换为RaisedButton
。
对于文本颜色,您可以使用style
小部件的Text
属性。
一些示例代码如下:
ButtonTheme(
height: 8.0,
buttonColor: Colors.red,
child: RaisedButton(
color: Colors.blue,
child: Text(
'Button',
style: TextStyle(color: Colors.white),
),
onPressed: () {},
),
)