使网络图像完全变宽

问题描述 投票:0回答:2

我有这张卡,我想使任何图像都占据该卡的全宽,我尝试将width设置为double.infinity和3000,但它不起作用。我也想在图像的顶部写上文字吗?如果这样做会影响应用程序性能吗?

 return Card(
            clipBehavior: Clip.antiAlias,
            elevation: 5,
            margin: EdgeInsets.fromLTRB(10, 20, 10, 24),
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: <Widget>[
                new Expanded(
                  flex: 8,
                  child: new Container(
                    width: double.infinity,
                    child: ClipRRect(
                      borderRadius: BorderRadius.circular(4.0),
                      child: CachedNetworkImage(
                        fadeInDuration: Duration(milliseconds: 2000),
                        width: 3000,
                        imageUrl:
                            'https://images.alphacoders.com/560/thumb-350-560228.jpg',
                        placeholder: (context, url) =>
                            new CircularProgressIndicator(),
                      ),
                    ),
                  ),
                ),
                new Expanded(
                    flex: 2,
                    child: new Container(
                      child: MaterialButton(
                        minWidth: double.infinity,
                        color: Color(orange),
                        onPressed: () {},
                        child: Text(
                          'Read More',
                          style: TextStyle(color: Colors.white),
                        ),
                      ),
                      color: Colors.green,
                    ))
              ],
            ),
          );
flutter flutter-layout
2个回答
1
投票
CachedNetworkImage(
  imageUrl: "http://via.placeholder.com/200x150",
  imageBuilder: (context, imageProvider) => Container(
    decoration: BoxDecoration(
      image: DecorationImage(
          image: imageProvider,
          fit: BoxFit.cover,
          colorFilter:
              ColorFilter.mode(Colors.red, BlendMode.colorBurn)),
    ),
  ),
  placeholder: (context, url) => CircularProgressIndicator(),
  errorWidget: (context, url, error) => Icon(Icons.error),
),```
 Check out this in which fit parameter will solve your question

1
投票

如果您要使其适合宽度

改用Boxfit.fitWidth

© www.soinside.com 2019 - 2024. All rights reserved.