gpt4 book ai didi

android - 为什么在 Flutter 中,PlatformView 不能缩小到自己的大小?

转载 作者:行者123 更新时间:2023-12-05 00:02:18 34 4
gpt4 key购买 nike

例如:

child: Row(
children: [
const Expanded(child: AndroidNativeView()),
ElevatedButton(
child: const Text("PLUS"))
],
)
在像 Flex(Row/Column) 这样没有父约束的布局中,AndroidNativeView (a PlatformViewLink) 无法确定其大小,因此将引发异常。因此,即时解决方案将其包装在 Expanded/Flexible 或具有硬编码宽度/高度的类似容器的小部件中。两种解决方案的布局都不灵活。
从当前 Dart 端实现的角度来看,我知道 sizedByParent PlatformViewRenderBox的功能被覆盖为真。因此,它从父级获取约束,而不测量自身,并填充它获得的任何空间。
我不明白的是,由于 Android 端有“WRAP_CONTENT”,他们无法在 Flutter 中将 PlatformView 缩小到自己的大小的原因是什么?有哪些技术困难/交易?

最佳答案

如果您使用 弹性(行/列)constraints独立宽度,例如如果您不提供 width/height到您的容器,然后它的 child 有权决定它想要在 中覆盖多少空间行/列 我们有一个名为 的属性主轴尺寸 默认设置为 MainAxisSize.max 但您也可以将其设置为 min,然后 行/列 还将覆盖他们children所需的任何空间.
但如果您提供 constraintsparent widget那么正如你在 中已经知道的那样 flutter 约束从父到子,因此它将涵盖所有可用的space .

关于android - 为什么在 Flutter 中,PlatformView 不能缩小到自己的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70376836/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com