Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9240643
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 18, 20262026-06-18T08:13:31+00:00 2026-06-18T08:13:31+00:00

i would like to detect a double tap BUT without triggering a single tap

  • 0

i would like to detect a double tap BUT without triggering a single tap first. i’ve tried double click listeners but you always get a onSingleTapUp before the double is detected, which is reasonable i guess. but in my app, i really don’t want the single click callback when there is a double click on the way.

i realize no app can predict the future (or i would be really rich) but i was thinking, just launch a timer on the single click and if there is no double click within some time out, then do the single click. but that doesn’t seem to work because once i start the timer and the timer is running, the second tap never generates an event. here’s my code using an aync task, i also tried it with a timer.

mGD = new GestureDetector(getContext(), new SimpleOnGestureListener() {

            @Override
            public boolean onSingleTapUp(MotionEvent ev) {
                //Log.d("KitView", "onSingleTapUp "+ev.toString());

                class DblTapTask extends AsyncTask<Void, Void, Void> {

                    @Override
                    protected void onPreExecute() {
                        Log.d("KitView", "onPreExecute");
                    }

                    protected Void doInBackground(Void... args) {
                        Log.d("KitView", "doInBackground");
                        try {
                            Thread.sleep(1000);
                        } catch (InterruptedException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                        return null;
                    }

                    protected void onPostExecute(Void result) {
                        Log.d("KitView", "onPostExecute");
                                            doSigleTapAction();
                        mDblTapTask=null;
                    }
                };

                if(mDblTapTask==null) {
                    Log.d("KitView", "START TASK");
                    mDblTapTask = new DblTapTask();
                    mDblTapTask.execute();
                } else {
                    Log.d("KitView", "TASK RUNNING");
                                    doDoubleTapAction();
                }


                Log.d("KitView", "onSingleTapUp DONE");
                return true;
            }   // end onSingleTapUp

        });     // end new GestureDetector

in this example, i get onSingleTapUp just fine on the first tap. my timeout is 1 sec for testing in the doInBackground so i have lots of time to do the second tap. note that Log.d(“KitView”, “onSingleTapUp DONE”); runs immediately i do the first tap, so onSingleTapUp is not hanging.

the problem is, taping again within the 1sec does nothing. there is no call to onSingleTapUp until after the sleep has finished and onPostExecute has run. so Log.d(“KitView”, “TASK RUNNING”); never happens which is where i would detect double click vs. single click of course.

i’m not sure why aynctask is blocking events, any ideas? thanks

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-18T08:13:33+00:00Added an answer on June 18, 2026 at 8:13 am

    I’m confused on what you’re trying to achieve. The double tap method onDoubleTap() isn’t called when the single tap occurs. On the other hand, for every double tap there are two associated single tap onSingleTapUp() method calls.

    If you want to distinguish them, you can use onSingleTapConfirmed() which is triggered when the gesture detector is sure the tap is single. See reference:

    Notified when a single-tap occurs.

    Unlike OnGestureListener.onSingleTapUp(MotionEvent), this will only be called after the detector is confident that the user’s first tap is not followed by a second tap leading to a double-tap gesture

    You can then use this method call in combination with a boolean flag to essentially detect any type of single/double tap.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I would like to know if it was possible to detect the double-click in
I would like to get to detect whether the given device is a tablet
I would like to detect mouse events like left button click, right button click
I would like to detect underflow when converting string to double in C++ (Visual
I would like to detect which HTML element was double clicked. Seems to something
I would like to be able to detect in cocoa(or actionscript, but cocoa preferably)
I would like to detect when a page load request give to a UIWebView
I would like to detect the following sequences: a aA aAa aAaA ... where
I have a database with almost 100,000 comments and I would like to detect
I have a JPanel, which I would like to detect the following events (1)

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.