【问题标题】:Preventing Scrollable layout when using webview/mapview使用 webview/mapview 时防止可滚动布局
【发布时间】:2014-07-07 13:57:35
【问题描述】:

我陷入了一种情况......我将我的父布局作为可滚动布局。在这个布局中,我有一个 webview 和一个 tablelayout。在这个可滚动的布局中,一些数据被夸大了。

我的问题是,我的垂直滚动功能似乎已被禁用,因为我的可滚动布局已经具备该功能。我几乎无法在 webview 中上下滚动。 Mapview 的情况也一样。我只能使用水平手势放大和缩小。我想知道只有当我放大/缩小,在mapview/webview中向上/向下滚动时,是否有任何方法可以禁用滚动功能。非常感谢。

【问题讨论】:

  • 你想要什么......你想禁用可滚动的父布局吗?
  • 是的。我想在 mapview/webview 时暂时禁用它。

标签: android google-maps layout android-webview


【解决方案1】:
WebView wv = (WebView)findViewById(R.id.myWebView);  // your webView inside scrollview
wv.setOnTouchListener(new WebView.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            int action = event.getAction();
            switch (action) {
            case MotionEvent.ACTION_DOWN:
                // Disallow ScrollView to intercept touch events.
                v.getParent().requestDisallowInterceptTouchEvent(true);
                break;

            case MotionEvent.ACTION_UP:
                // Allow ScrollView to intercept touch events.
                v.getParent().requestDisallowInterceptTouchEvent(false);
                break;
            }

            // Handle ListView touch events.
            v.onTouchEvent(event);
            return true;
        }
    });

MapView 做同样的事情会起作用..

您可以在片段中使用地图视图,它也支持地图 v2。

这是官方的, 看到这个https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/MapView

【讨论】:

  • 感谢您的快速回复。很抱歉让您感到困惑。我正在使用谷歌地图 API。所以我有一个片段上的地图。我相信与 Mapview 无关了。您知道如何在片段上使用 googlemap 吗?
  • 你可以使用 mapview 和片段在这里查看我的答案stackoverflow.com/questions/20198750/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-09
  • 1970-01-01
相关资源
最近更新 更多