问题
如何使用 Flutter 创建带有图像的按钮?这似乎是最简单的事情,但图像并没有完全填满父小部件。这就是我所拥有的:
- Container(child: ConstrainedBox(
- constraints: BoxConstraints.expand(),
- child: FlatButton(onPressed: null,
- child: Image.asset('path/the_image.png'))))
复制代码
我用这篇文章作为指导。我的图像是这样的:
请注意 PNG 图像周围的填充 - 它不在代码中。它从哪里来的? PNG 本身没有画布填充,所以这一定不是正确的技术。
我所需要的只是一个带有填充整个 FlatButton 的图像的按钮,或者另一个可以在不扭曲图像的情况下添加操作的小部件。
回答
将图像放在 FlatButton 中可能无法满足您的要求,因为它自己处理一些样式(如填充)。
要完全控制按钮方面,您可能想要构建一个自定义小部件(甚至是一个带有自定义显示图像的简单容器小部件)并用手势识别器包装它以处理用户交互(在您的情况下,是一个简单的点击)。最简单的实现将使用 BoxDecoration ,但还有其他小部件,例如 GestureDetector ,它们在可点击的小部件的表面上呈现材料设计波纹。
|