一尘不染

在Flutter中更改图像的背景色

flutter

我们可以在Flutter中更改图像的背景颜色吗?像这张图片一样,我想将粉红色的背景色更改为其他颜色。


阅读 2615

收藏
2020-08-13

共1个答案

一尘不染

你不能随风而动。您需要一个图像编辑器来更改背景颜色。

如果要动态更改背景颜色,则必须首先通过向图像添加Alpha通道蒙版(再次使用图像编辑器)使背景透明(然后再次使用图像编辑器),然后可以通过将图像放在具有背景色的小部件。

这是一个完整的示例应用程序。重新加载小部件时,背景颜色随机变化。

import 'dart:math';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  Color randomColor() =>
      Color((Random().nextDouble() * 0xFFFFFF).toInt() << 0).withOpacity(1.0);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'MyApp',
      home: Center(
        child: Container(
          decoration: BoxDecoration(
            color: randomColor(),
          ),
          child: Image.network(
            'https://i.stack.imgur.com/O02Ip.png',
          ),
        ),
      ),
    );
  }
}
2020-08-13