如果我在webview中有ontouch事件,则内置缩放控件不起作用

时间:2012-10-25 07:06:18

标签: android android-webview webviewclient pinchzoom

我正在使用webiview并且我覆盖了onTouchEvent而不是内置的缩放控件无效。

    wv.setOnTouchListener(new OnTouchListener()
    {

        public boolean onTouch(View arg0, MotionEvent arg1) 
        {

            if(arg1.getAction()==MotionEvent.ACTION_DOWN)
            {
                x_down = (int) arg1.getX();
                y_down = (int) arg1.getY();

            Log.v("log", "x pos is "+x_down +"y pos is "+y_down);

            }

            else if(arg1.getAction()==MotionEvent.ACTION_UP)
            {
                x_up = (int) arg1.getX();
                y_up = (int) arg1.getY();

            Log.v("log", "x pos is "+x_up +"y pos is "+y_up);


            if((x_down-x_up)>30)
            {
                wv.loadData("<img src=\"myurl_1\">", "text/html", null);
            }
            else if((x_up-x_down)>30)
            {
                 wv.loadData("<img src=\"myurl_2\">", "text/html", null);
            }

            }
            return true;
        }
    });

提前致谢...

2 个答案:

答案 0 :(得分:1)

您将始终使用onTouch方法返回true,这意味着您是唯一负责处理触摸事件的人。
你应该只在你想要的情况下返回true,并在其他情况下返回super.onTouch ..

答案 1 :(得分:0)

       webView.getSettings().setBuiltInZoomControls(true);

将此代码添加到您的网页浏览中 我希望它有效