我默认在body小部件中使用ListView((或SingleChildScrollView((。因此,如果内容较少,它将滚动内容。我只想在内容大于屏幕高度时启用滚动。如果内容高度小于屏幕高度,则需要禁用滚动。
double? physicalSizeScreenHeight =
ui.window.physicalSize.height / ui.window.devicePixelRatio;
physics: physicalSizeScreenHeight <= 700
? AlwaysScrollableScrollPhysics()
: NeverScrollableScrollPhysics(),
它对某些设备有效,对某些设备无效取决于屏幕宽度和高度,也取决于分辨率。
在不检查"0"处的任何条件的情况下;物理学";对于始终或从不,并允许AlwaysScrollbleScrollPhysics((,然后取决于锥形高度,需要启用/禁用滚动。
任何建议都有助于解决这个问题。
事实上,SingleChildScrollView
包装Column
与直接使用ListView
之间的(许多(区别之一是,前者仅在Column
中项目过多时才会滚动。
如果这不是你所看到的,你可能会有其他布局问题。
尝试这种简单的布局SingleChildScrollView
>Column
>Text('Hi')
并验证它是否不会滚动。
尝试使用它
final size = MediaQuery.of(context);
final apparentSize = size.size.height - size.padding.bottom - size.padding.top