dart 中的响应式容器圆角
Responsive container round corners in dart
我在想,在Dart/Flutter中,你能不能在下面的行
中插入一个半径的响应值而不是这个固定值
topLeft: Radius.circular(20.0)
我希望我能做类似的事情:
topLeft: Radius.circular(SOME SECRET CODE HERE JUST LIKE MEDIAQUERY THING THAT GETS RATIO FROM SCREEN SIZE)
我在
中使用了 MediaQuery
body: Container(
width: MediaQuery.of(context).size.height * 0.4,
height: MediaQuery.of(context).size.height * 0.6,
),
它完美地给出了绘制容器相对于屏幕尺寸的这些比例,所以我需要圆角来继承特定的比例,就像宽度和高度一样。
您可以创建一些变量来保存角的计算值,然后使用 setState 重建屏幕。所以容器将用新值重建。
double leftCornerRadius = 0.0;
//calculate the corner and setstate
setState(){
leftCornerRadius = 15.0;
}
//and on the container user the variable
topLeft: Radius.circular(leftCornerRadius)
因此,每次您使用 setState 重新计算半径时,都会更改小部件上的半径。
希望我能帮到你。
我在想,在Dart/Flutter中,你能不能在下面的行
中插入一个半径的响应值而不是这个固定值topLeft: Radius.circular(20.0)
我希望我能做类似的事情:
topLeft: Radius.circular(SOME SECRET CODE HERE JUST LIKE MEDIAQUERY THING THAT GETS RATIO FROM SCREEN SIZE)
我在
中使用了 MediaQuery body: Container(
width: MediaQuery.of(context).size.height * 0.4,
height: MediaQuery.of(context).size.height * 0.6,
),
它完美地给出了绘制容器相对于屏幕尺寸的这些比例,所以我需要圆角来继承特定的比例,就像宽度和高度一样。
您可以创建一些变量来保存角的计算值,然后使用 setState 重建屏幕。所以容器将用新值重建。
double leftCornerRadius = 0.0;
//calculate the corner and setstate
setState(){
leftCornerRadius = 15.0;
}
//and on the container user the variable
topLeft: Radius.circular(leftCornerRadius)
因此,每次您使用 setState 重新计算半径时,都会更改小部件上的半径。 希望我能帮到你。