如何使RaisedButton自动适应抖动中的屏幕宽度

时间:2020-10-31 04:51:34

标签: flutter

现在,我在flutter中定义了RaisedButton的宽度:

builder: (context) {
     return ButtonTheme(
            minWidth: 400.0,
            height: 50.0,
            child: RaisedButton()
)}

但是它不能适合所有不同类型的屏幕宽度,如何使其自动适合?我尝试使用80%,但似乎无法按百分比使用。

1 个答案:

答案 0 :(得分:1)

您可以使用:

double screenWidth = MediaQuery.of(context).size.width;

获取屏幕的宽度,然后将其设置为minWidth小部件的ButtonTheme

还要确保已将应用程序的主窗口小部件包装在MaterialApp中,以便能够访问MediaQuery对象。像这样:

@override
Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.dark().copyWith(scaffoldBackgroundColor: darkBlue),
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: MyWidget(),
        ),
      ),
    );
  }