【问题标题】:Disable onClicklistner while other touch listner is active在其他触摸侦听器处于活动状态时禁用 onClicklistener
【发布时间】:2015-05-09 23:19:28
【问题描述】:

我正在尝试实现类似 google keep 的 UI。 在主布局中有框架布局,其中有一个 FAM(浮动操作菜单)和一个黑色阴影视图,当 FAM 展开时可见。

我想要的是当我触摸阴影视图时它应该折叠 FAM。为此,我在 shadowview 上实现了 onTouchlistner。

shadowview.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if(fam.isExpanded()){
                fam.collapse();
            }
            return false;
        }
    });

但发生的情况是,当我用 MyCardGridView 的卡片(打开的另一个活动)触摸该区域时,会打开另一个活动。这不应该发生。

【问题讨论】:

    标签: android android-layout onclicklistener ontouchlistener


    【解决方案1】:

    您应该尝试使用return true; 而不是return false;,因为正如文档所述:

    返回: 如果侦听器已经消费了事件,则为 true,否则为 false。

    也许这里的问题是由return false引起的

    【讨论】:

    • 这对我有帮助 谢谢:)
    猜你喜欢
    • 2020-03-06
    • 1970-01-01
    • 2015-02-22
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 1970-01-01
    • 1970-01-01
    • 2017-04-22
    相关资源
    最近更新 更多