使用Flutter在可点击的图像上显示文本

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

我正在尝试在可点击的图像上显示一些文本。我正在使用InkWell小部件来使图像可单击,并使用Stack小部件来覆盖Text小部件:

new Expanded(
  child: new Stack(
    children: <Widget>[
      new InkWell(
        onTap: (){ _doSomething(); },
        child: Image.asset("images/my-image.jpg"),
      ),
      new Text("Some text"),
    ],
  ),
)

这样,我只能点击未填充文本的图像部分,这不好。我希望我的功能能够运行,即使点击了重叠文本。

我尝试使用FlatButton小部件而不是Text,但它以某种方式起作用,但是我确定这不是执行此操作的正确方法。您有什么建议吗?

new Expanded(
  child: new Stack(
    children: <Widget>[
      new InkWell(
        onTap: (){ _doSomething(); },
        child: Image.asset("images/my-image.jpg"),
      ),
      new FlatButton(
        onPressed: (){_doSomething;},
        child: Text("Some text"),
      )
    ],
  ),
),
flutter dart material-design
2个回答
1
投票

如果将InkWell向上移到栈上方怎么办?

Expanded(
  child: InkWell(
    onTap: (){ _doSomething(); },
    child: Stack(
      children: <Widget>[
        Image.asset("images/my-image.jpg"),
        Text("Some text"),
      ],
    ),
  ),
),

1
投票

将纸叠放入墨水瓶中。

Expanded(
      child: InkWell(
        onTap: () => _doSomething(),
        child: Stack(
          children: <Widget>[
            Image.asset("images/my-image.jpg"),
            Text("Some text"),
          ],
        ),
      ),
    )
© www.soinside.com 2019 - 2024. All rights reserved.