现在,我在flutter中定义了RaisedButton的宽度:
builder: (context) {
return ButtonTheme(
minWidth: 400.0,
height: 50.0,
child: RaisedButton()
)}
但是它不能适合所有不同类型的屏幕宽度,如何使其自动适合?我尝试使用80%,但似乎无法按百分比使用。
答案 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(),
),
),
);
}