Обнаружение прикосновений к веб-представлению внутри структуры кадра - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть FrameLayout, и я создал внутри него веб-просмотр, который загружает некоторый URL.и я добавляю веб-просмотр как дочерний элемент к FrameLayout.Я реализую метод onTouch в веб-просмотре, но кажется, что только разметка кадра обнаруживает прикосновения. вот как выглядит мой экран .Оранжевая область должна обнаруживать касания в веб-просмотре, а синяя область должна обнаруживать касания в FrameLayout.

вот мой код:

this.post(new Runnable() {
@SuppressLint({"SetJavaScriptEnabled", "ClickableViewAccessibility"})
@Override
public void run() {
    try {
        if (webView == null) {
            webView = new WebView(context) {
                @Override
                public boolean onTouchEvent(MotionEvent event) {
                    return true;
                }
            };

            // resize webView
            LayoutParams layoutParams=new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
            layoutParams.setMargins(50, 50, 50, 100);
            webView.setLayoutParams(layoutParams);

            webView.setWebChromeClient(new WebChromeClient());
            webView.setWebViewClient(new WebViewClient());
            webView.getSettings().setJavaScriptEnabled(true);
            webView.setBackgroundColor(Color.TRANSPARENT);

        }
        current_url = webView.getUrl();
        webView.setVisibility(View.VISIBLE);

        if ( current_url == null || !overlay_url.contentEquals(current_url)) {
            webView.loadUrl(overlay_url);

            webView.setOnTouchListener(new OnTouchListener() {
                @Override
                public boolean onTouch(View view, MotionEvent motionEvent) {
                    return true;
                }
            });

            current_url = overlay_url;
        }
        if (indexOfChild(webView) == -1) {
            addView(webView, 2);
        }

    } catch (Exception exc) {
        Log.e(TAG, "exception in WebView", exc);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...