在列中重叠 Flutter 小部件

0qx6xfy6  于 6个月前  发布在  Flutter
关注(0)|答案(1)|浏览(83)

我有一个列,上面包含一个扩展的Map,底部有一张卡片,上面显示一些信息。这张卡片有一个边界半径,所以如果没有任何变化,我会在卡片的角落周围有一个不愉快的空白空间:


的数据
我目前的解决方案是把Map放在transform.scale里面,这是一种覆盖空间的方法。我想知道是否有一个更好的解决方案?
我试着使用堆栈,但我的堆栈问题是,如果我的卡大小改变,那么定位Map将不得不知道这一变化,以调整其底部相应地导致一个混乱的代码。
编辑:这是我目前的解决方案,我正在寻找一种方法来改善。

Column(
  children: [
    Transform.scale(
      scale: 1.1,
      child: MapView(),
    ),
    const Card()
   ],
 )

字符串

llycmphe

llycmphe1#

它的解决方案是CLipRRect和堆栈小部件。ClipRRect有点难以理解,但如果你这样做,你可以解决这个问题

Column(
  children: [
    Expanded(
      child: MapView(),
    ),
    ClipRRect(
      borderRadius: BorderRadius.only(
        topLeft: Radius.circular(20.0), // Adjust the values as needed
        topRight: Radius.circular(20.0),
      ),
      child: Container(
        color: Colors.white, // You can set the background color if needed
        child: const Card(), // Your card widget
      ),
    ),
  ],
)

字符串

相关问题