Flutter踩坑记录(二)-- GestureDetector+Expanded点击无效果

Expanded是自动扩展布局,它可以用于Row, ColumnFlex布局中。Expanded部件会尝试占用尽可能多的空间。

但是在GestureDetector中,点击事件会无效:

解决方法

给GestureDetector包裹的最外层Widget加一个背景色:

复制代码
GestureDetector(
      onTap: onTap,
      child: Container(
        color: Colors.transparent,
        height: 50,
        margin: const EdgeInsets.only(left: 10, right: 10),
        child: Stack(
          alignment: Alignment.center,
          children: [
            Row(
              children: <Widget>[
                Image.asset(image),
                Container(
                  margin: const EdgeInsets.only(left: 10),
                  child: Text(
                    title,
                    style: const TextStyle(fontSize: 16),
                  ),
                ),
                Expanded(child: Container()), //自动扩展挤压
                Image.asset(
                  'assets/images/community_icon_right.png',
                  width: 20,
                )
              ],
            ),
          ],
        ),
      ),
    );
相关推荐
gnip4 分钟前
包管理工具的发展
前端
前端工作日常1 小时前
H5 实时摄像头 + 麦克风:完整可运行 Demo 与深度拆解
前端·javascript
coder_pig1 小时前
🤡 公司Android老项目升级踩坑小记
android·flutter·gradle
韩沛晓1 小时前
uniapp跨域怎么解决
前端·javascript·uni-app
前端工作日常1 小时前
以 Vue 项目为例串联eslint整个流程
前端·eslint
程序员鱼皮1 小时前
太香了!我连夜给项目加上了这套 Java 监控系统
java·前端·程序员
Rubin932 小时前
TS 相关
javascript
该用户已不存在2 小时前
这几款Rust工具,开发体验直线上升
前端·后端·rust
前端雾辰2 小时前
Uniapp APP 端实现 TCP Socket 通信(ZPL 打印实战)
前端
无羡仙2 小时前
虚拟列表:怎么显示大量数据不卡
前端·react.js