Flutter - Align 对齐与相对定位

2023-11-08

只想简单的调整一个子元素在父元素中的位置的话,使用Align组件会更简单一些

Align({
  Key key,
  this.alignment = Alignment.center, // 调整内部子控件的位置
  this.widthFactor,  
  //为null时  尽可能的占最大位置  , 他是一种系数, 
  //通过 widthFactor * zi控件的width 来决定Align 的宽度
  this.heightFactor,//同上
  Widget child,
})

示例1

		Container(
          height: 120.0,
          width: 120.0,
          color: Colors.blue[50],
          child: Align(
            alignment: FractionalOffset(0.5,0.5),//FractionalOffset(0.1, 0.1)
            child: FlutterLogo(
              size: 60,
            ),
          ),
        ),

在这里插入图片描述
注意 : FractionalOffset(0.5,0.5) 应为这里传的0.5,0.5 所以在中间显示

Align(
  widthFactor: 2,
  heightFactor: 2,
  alignment: FractionalOffset(0.1,0.5),
  child: FlutterLogo(
    size: 60,
  ),
),

在这里插入图片描述
没有背景了 ,因为FractionalOffset(0.1,0.5), 这里是0.1 所有靠左一点

Center

//Center继承自Align 
//但没有 alignment 属性, 
//所以只能默认居中显示了 ,
const Center({ super.key, super.widthFactor, super.heightFactor, super.child });

		Center(
          child: Text(""),
        )
// 使用时,因为没有设置 widthFactor ,heightFactor 的值 ,
// 所有内部Text("") 会居中显示

AlignmentGeometry 是一个抽象类,它有两个常用的子类:Alignment和 FractionalOffset

未完待续

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter - Align 对齐与相对定位 的相关文章

  • 如何停止抖动中的计时器?

    我在 flutter 中创建了一个计时器 一切正常 现在我不知道如何在启动计时器后关闭它 文档说你可以通过调用取消它void cancel 但我不明白其实现 我该怎么称呼它 这是正确的方法吗 static const timeout con
  • 在flutter中跟踪背景位置时使用background_locator插件时出现问题

    我正在尝试使用 flutter 跟踪后台位置 为此我正在使用背景定位器 https pub dev packages background locator插入 它的实现方式是注册某些静态回调函数 我声明了一个 File 类型的类变量来在后台
  • 颤振:flutter_markdown 字体大小

    使用 flutter markdown 时有什么方法可以改变文本的字体大小吗 就像向文本小部件提供 TextStyle 一样 谢谢 Markdown data html2md convert article content styleShe
  • Flutter - TextPainter 与 Paragraph 绘制书页

    我需要显示长文本 这将占用几个屏幕 页面 我还必须添加一些功能 所以我想实现我自己的文本显示组件 我找到了与此任务相对应的两个类 文本绘制器 use TextSpan对于文本 use 油漆 画布 胶印 用于绘画 段落使用 队列 作为文本和样
  • Firebase Cloud Function:& Flutter:无法在模拟器上使用 https 可调用函数 [firebase_functions/unavailable] 不可用

    我试图从我的 flutter 应用程序中使用模拟器调用 HTTPS 可调用函数 但它似乎不起作用 我调用该函数后 总是需要大约 5 秒的时间并返回错误 如果我将该功能部署在服务器上 它就可以完全正常工作 这是我的功能 exports try
  • 是否可以从图像中获取图像 GPS 位置坐标?

    我正在构建一个 Flutter 应用程序 用户可以在其中发布照片及其位置 用户可以从相机或图库中获取图片 如果用户从相机拍照 我可以使用设备的 GPS 位置来设置图片的位置 我正在尝试根据图片的元数据获取图片的 GSP 位置 但是 我还没有
  • 如何让按钮选择所有 Flutter 复选框?

    问题是我无法让按钮选择所有复选框 因为我使用的是自动生成的复选框列表 由于我创建了一个带有列表项的类 WordBlock 它是一个带有复选框的容器 每个复选框都有自己的选中值 因此我无法以任何方式选择所有内容 如果我通过构造函数设置选中的值
  • TabController 中的通知监听器用于无限滚动

    我有 4 个选项卡 我想在其中添加延迟加载或无限滚动选项 早些时候我尝试使用滚动控制器 但当它到达末尾时 事件触发多次 因此 有多个 Future http 请求到 API 我读了一些关于SO的问题 发现我可能需要使用Notificatio
  • Riverpod - ref.refresh。应该使用“刷新”的值

    我正在将 Riverpod 与 flutter 一起使用 在我的主屏幕上 我有一个 FutureProvider 它调用 API 服务器 并在页面上显示结果 在应用程序的不同点 不同屏幕上的用户进行更改 然后我从另一个屏幕刷新提供程序 像这
  • 如何使用 Dart 将列表拆分或分块为相等的部分?

    假设我有一个类似的列表 var letters a b c d e f g h 我想要一个列表 每个列表包含 2 个元素 var chunks a b c d e f g h 使用 Dart 执行此操作的好方法是什么 这是另一种方法 var
  • Flutter/Dart - () {} 和 () => {} 之间的区别

    在 Flutter Dart 中 示例有时显示粗箭头 有时不显示 以下是示例 RaisedButton onPressed setState myTxt Text Changed 在其他地方你会看到 void main gt runApp
  • 如何在 flutter 插件的 Swift 编写的 iOS 部分中使用 Objective-C 框架

    In a 颤振插件 我想用一个Objective C我的框架iOS部分用swift编写 然后将其用于使用 Swift 的 Flutter 项目作为 iOS 语言 经过一些研究 我不是 iOS 开发人员 后 我发现我想要做的事情可以通过导入文
  • 如何指定测试窗口?

    我需要测试中的屏幕看起来与物理设备 或模拟器 上的屏幕相同 我该怎么做 就我而言 设备 ID 为 Iphone SE 我编写了一个将屏幕截图保存到磁盘的测试 testWidgets test WidgetTester tester asyn
  • 颤动验证单选按钮

    如何将验证器函数添加到单选按钮列表中以便让它们验证 例如TextFormFields with formKey currentState validate 用户提交后Form 您可以复制粘贴运行下面的完整代码您可以使用包https pub
  • Flutter 导航到其他页面中的特定选项卡

    我正在尝试从一个页面导航到另一页面并设置选项卡栏的索引 这是我在第一页的代码 GestureDetector onTap Navigator push context MaterialPageRoute builder context gt
  • 颤动相机显得拉伸

    我一直在玩颤振 到目前为止我很喜欢它 但我在让相机工作时遇到了问题 我按照本页上的说明进行操作https pub dartlang org packages camera https pub dartlang org packages ca
  • 我在浏览时无法预览 vscode 上的图标?

    如图所示 我正在浏览图标 但没有显示任何图标 新的更新是否有变化 或者我在这里遗漏了一些东西 gt 它曾经在我浏览时显示图标 当您将鼠标悬停在工具提示的右侧时 应该会出现一个箭头 指出 阅读更多 只需单击一次 因此图标预览应该始终出现
  • 如何在flutter中绘制自定义形状卡片

    我只想创建这样的卡片 代码如下 我用的是CustomPaint小部件绘制自定义形状 然后在内部使用堆栈Card正确放置小部件的小部件 我没有图像 所以将其更改为粉红色以显示图像 这是卡片小部件的代码 然后是CustomPainter cla
  • 保留选项卡视图页面之间的状态

    issue 我有两个ListViews渲染内部TabBarView用一个TabController 我如何在每个之间保留状态 由于缺乏更好的词 ListView这样 1 小部件不会重建 2 ListView选项卡之间的位置会被记住 相关代码
  • Flutter 扩展方法不起作用,它显示“未定义的类”和“需要扩展方法语言功能”

    我正在慢慢建立我的个人网站dlblack dev http dlblack dev 我正在尝试让它变得更有趣一点 例如 在计算机 而不是平板电脑或手机 因为它们没有鼠标指针 上 如果您将鼠标悬停在任何可单击项目上 它不会更改您的鼠标指针以指

随机推荐