将 onClickListener 和 onTouchListener 设置为 View

发布于 2024-12-12 22:07:11 字数 694 浏览 3 评论 0原文

我需要将 onClickListener 和 onTouchListener 设置为视图。仅设置其中之一时,相应的侦听器按预期工作,但是当我设置两者时,仅调用触摸侦听器,即手势有效,但单击不起作用...

有人可以帮忙吗?

verticalSwipeDetector = new GestureDetector(new VerticalSwipeListener());
verticalSwipeListener = new View.OnTouchListener() 
{
    public boolean onTouch(View v, MotionEvent event) 
    {
        if (verticalSwipeDetector.onTouchEvent(event)) 
        {
            return true;
        }
        else{
            return false;
        }
    }
};


gallery.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {   
        // never called
    }           


});

gallery.setOnTouchListener(verticalSwipeListener);

I need to set both an onClickListener and an onTouchListener to a View. When setting only one of them the corresponding listener works as expected, but when I set both, only the touch listener is called, i.e. gesture works, but click doesn't...

Anybody can help?

verticalSwipeDetector = new GestureDetector(new VerticalSwipeListener());
verticalSwipeListener = new View.OnTouchListener() 
{
    public boolean onTouch(View v, MotionEvent event) 
    {
        if (verticalSwipeDetector.onTouchEvent(event)) 
        {
            return true;
        }
        else{
            return false;
        }
    }
};


gallery.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {   
        // never called
    }           


});

gallery.setOnTouchListener(verticalSwipeListener);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文