如何确定方向是纵向的还是横向的

if(portrait){
  return ListView.builder()
}else{
  return GridView.count()
}

推荐答案

为了确定屏幕的方向,我们可以使用OrientationBuilder小部件.OrientationBuilder将确定当前方向,并在方向更改时重建.

new OrientationBuilder(
  builder: (context, orientation) {
    return new GridView.count(
      // Create a grid with 2 columns in portrait mode, or 3 columns in
      // landscape mode.
      crossAxisCount: orientation == Orientation.portrait ? 2 : 3,
    );
  },
);

您可以在此处找到完整的示例: https://flutter.io/cookbook/design/orientation/

Flutter相关问答推荐

类型flatter doctor get zsh:未找到命令:macO中flatter

如何将图像从顶部和底部半向外设置为飘动

获取屏幕大小的滚动视图与动态大小?

带有可滚动页面(不包括分页区)的Flutter 页面视图

如何在Flutter 中不从getX库中初始化GetxController中的变量

框中的Flutter 适配图像

尽管 onCollision 处理了我的角色还是从平台上掉了下来

Flutter 使用扩展的 TextField 定位小部件

如何在Flutter中动态绘制一条从A点到B点的线?

在 flutter 中获取最喜欢的文档

如何防止键盘将内容向上推?

如何与 PostgreSQL 和外部网站交互 flutter apk?

graphql_flutter 错误:非抽象类GraphQLWebSocketChannel缺少实现

如何在 Flutter 中使用 drawLine() 和 drawCircle() 绘制等距离的 4 条线

如何在 cupertino switch flutter 中添加文本

有没有办法为文本中的下划线创建自定义样式?

仅使用 Flutter 在本地环境中托管 Web 服务器

CircleAvatar 在 ListTile 中领先

如何将变量翻译成其他语言

Flutter 小部件中的视图和逻辑分离