我一直在开发一个Flutter 应用程序,并根据一些Firebase数据动态构建一些容器. 我想知道是否有办法获得容器(或任何不是按钮的小部件)的ONTAP方法?

以下是代码示例:

  child: new Container(

    //INSERT ONTAP OR ONPRESSED METHOD HERE

    margin: const EdgeInsets.symmetric(vertical: 10.0),
    child: new Row(
      crossAxisAlignment: CrossAxisAlignment.start,
      children: <Widget>[
        new Container(
          margin: const EdgeInsets.only(right: 16.0),
          child: new GoogleUserCircleAvatar(snapshot.value['images'][0]),
        ),
        new Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children : [
            new Container(
              padding: const EdgeInsets.only(bottom: 8.0),
              child: new Text("${snapshot.value['name']}",
                style: new TextStyle(
                  fontWeight: FontWeight.bold,
                ),
              ),
             ),
            new Text("${snapshot.value['description']}",
              style: new TextStyle(
                color: Colors.grey[500],
              ),
            ),
          ]
        )
      ],
    ),

推荐答案

你可以用InkWellGestureDetector来包装你的Container.不同之处在于,InkWell是一个显示接收到touch 的视觉指示的实体小部件,而GestureDetector是一个更通用的小部件,不显示视觉指示.

Flutter相关问答推荐

所需引用Firebase处不存在任何对象

Flutter 动画列表一次构建所有项目,而不是仅构建可见的项目

Flutter AppBar Animation反向调试

将图标呈现在Flutter 克牌小工具的角落上

在框中保存对象列表时,类型推断无法正常工作

Flutter Riverpod,将默认的BTC值改写为我的新状态

在flutter web上渲染多个Youtube视频

播放特定持续时间Flutter 的音频

如何在 Flutter 中创建具有渐变背景色的自定义 Snackbar?

Flutter 需要 Xcode 14 或更高版本

Riverpod 注册多少个 providers

Riverpod 2.3.6:AutoDisposeNotifier和ref.onDispose自动处理

更改底部导航栏下方 Flutter Snackbar 的位置

Flutter canvas 绘制不同 colored颜色 的原始点

Flutter 动保存新的变量值

如何(部分)更新 riverpod 中的 AsyncValue?

如何对齐卡片小部件中的图标按钮?

通过点击缩略图加载全屏图像

Flutter Websockets MacOS:相同的代码在调试模式下有效,但在发布模式下无效:(操作系统错误:提供了 node 名或服务名..)

无法列出 com.facebook.android:facebook-login -Facebook 登录问题的版本