导入'package:flutter / material.dart'; 导入'package:project / widget / widget.dart';
class ThreeWidget extends StatelessWidget {
void onBabLogoPressed(BuildContext context) => Navigator.push(context, MaterialPageRoute(builder: (context) => Widget()));
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
constraints: BoxConstraints.expand(),
decoration: BoxDecoration(
color: Color.fromARGB(255, 232, 232, 232),
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Container(
width: 331,
height: 99,
margin: EdgeInsets.only(left: 31, top: 326),
child: FlatButton(
onPressed: () => this.onBabLogoPressed(context),
color: Colors.transparent,
textColor: Color.fromARGB(255, 0, 0, 0),
padding: EdgeInsets.all(0),
child: Text("",),
),
),
],
),
),
);
}
}
Widget
不是函数
答案 0 :(得分:0)
您正在使用
Navigator.push(context, MaterialPageRoute(builder: (context) => Widget()))
这是不正确的,因为您不能像这样实例化窗口小部件。您需要做的就是创建一个Stateful/Stateless
小部件并在此处使用它,例如,您可以创建一个新的小部件,例如:
class MyNewWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(...);
}
}
现在您可以使用
Navigator.push(context, MaterialPageRoute(builder: (context) => MyNewWidget()))