Click here to Skip to main content
15,889,281 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
I have a webView. WebView shows html with text, images, buttons etc. I want to make few things.

1) That user can not select text in webView

2) The same behavior of click and long click by button.

I made next things for resolve my problems: First of all, I added to html page style:

CSS
 body {
 ...
 -webkit-user-select: none;
 -webkit-touch-callout: none;
 ...
}

But it didn't help me. This solution didn't work on all androids. So I tried to add touch listener to webView.

Code of listener:
Java
webView.setOnTouchListener(new OnTouchListener() {

private float prevX;
private float prevY;

@Override
public boolean onTouch(View v, MotionEvent event) {

    boolean handled = true;
    if (MotionEvent.ACTION_DOWN == event.getAction()) {
        prevX = event.getX();
        prevY = event.getY();
    } else if (MotionEvent.ACTION_UP == event.getAction()) {
        if (Math.abs(event.getX() - prevX) < 50
                && Math.abs(event.getY() - prevY) < 50) {
            handled = (event.getEventTime() - event
                    .getDownTime()) > 200;
        }
    }

    Log.d("-------------------------------------------------", ""+handled);

    return handled;
}

 });

But this didn't work either, may be I made something wrong? After that I tried to add long click listener:
Java
 webView.setOnLongClickListener(new OnLongClickListener() {

@Override
public boolean onLongClick(View v) {
    v.performClick();
    return true;
}
});

This solution solves only the first problem.
Posted
v3

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900