首页 > 解决方案 > Flutter 如何用背景图片创建卡片?

问题描述

我正在尝试创建一张以图像为背景的卡片。问题是,图像溢出卡,所以不显示角落。

我需要将图像设置为卡片的背景或将卡片溢出行为设置为不溢出。但我找不到任何属性。

这是我的卡片:

Widget _buildProgrammCard() {
  return Container(
    height: 250,
    child: Card(
      child: Image.asset(
        'assets/push.jpg',
        fit: BoxFit.cover,
      ),
      shape: RoundedRectangleBorder(
        borderRadius: BorderRadius.circular(10.0),
      ),
      elevation: 5,
      margin: EdgeInsets.all(10),
    ),
  );

它看起来像这样:

在此处输入图像描述

在此处输入图像描述

标签: dartflutter

解决方案


其他方式不使用 -ClipRRect小部件 - 是设置semanticContainer: true,Card部件。

示例代码如下:

Card(
          semanticContainer: true,
          clipBehavior: Clip.antiAliasWithSaveLayer,
          child: Image.network(
            'https://placeimg.com/640/480/any',
            fit: BoxFit.fill,
          ),
          shape: RoundedRectangleBorder(
            borderRadius: BorderRadius.circular(10.0),
          ),
          elevation: 5,
          margin: EdgeInsets.all(10),
        ),

输出:

在此处输入图像描述


推荐阅读