【发布时间】:2018-07-18 09:33:38
【问题描述】:
我有自定义按钮,我想在我的 onpressed 参数中添加方法,不幸的是我仍然卡住我应该在我的自定义按钮参数中使用什么类型,目前我硬编码 onpressed 方法并将字符串路由传递给导航问题不是我的所有按钮都是用来导航的,只有一个按钮可以注销,我已经在参数中使用了 void 但它仍然不起作用。 这是我的自定义按钮
FlatButton buttonMenu(String title, IconData icon, String route) {
return new FlatButton(
shape: new RoundedRectangleBorder(
borderRadius: new BorderRadius.circular(25.0)),
color: Colors.blueGrey,
child: new Container(
height: 50.0,
width: 120.0,
child: new Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
new Padding(
padding: EdgeInsets.only(right: 10.0),
child: new Icon(
icon,
color: Colors.white70,
size: 30.0,
),
),
new Text(
title,
style: new TextStyle(fontSize: 20.0, fontWeight: FontWeight.w300),
),
],
),
),
onPressed: () {
Navigator.of(context).pushNamed('/$route');
},
);
}
}
这是我如何调用自定义按钮
buttonMenu('MVP Arc', Icons.star, 'EmployeeScreen')
我想要的是我可以将我的参数中的方法发送到我的onpressed,所以它会像这样
buttonMenu('MVP Arc', Icons.star, myMethod())
我的导航方法
void _navigate(String route){
Navigator.of(context).pushNamed('/$route');
}
【问题讨论】:
标签: dart material-design flutter