【问题标题】:Zoom controls not showing when using a MapView with fill_parent使用带有 fill_parent 的 MapView 时不显示缩放控件
【发布时间】:2023-03-16 08:09:01
【问题描述】:

大家好,我正在开发一个应用程序,我正在使用内置的缩放控件。使用特定尺寸时,我可以看到缩放控件。使用 fill_parent 时,缩放控件不可见。它的设置方式是框架布局内的地图视图(也使用填充父级作为高度和宽度,但在屏幕下方有一个偏移量。我唯一能想到的是填充父级问题是框架布局和缩放控件不在屏幕上。对不起,如果这令人困惑,我自己写的很困惑。提前谢谢

【问题讨论】:

  • 发布布局 xml。它是否仅在线性布局中与 Mapview 一起使用?为什么要框架布局?
  • 这是我切换并使其工作的代码。问题在于框架布局和填充父级,这样做会导致屏幕超出可见范围。如果有更好的方法,请告诉我。我根本不知道 XML,这对我来说是全新的。 (以下简称)
  • 这根本没有格式化代码。对于那个很抱歉。基本上我发现了这个问题,但我不明白为什么填充父级不能补偿向下移动

标签: android google-maps


【解决方案1】:

在我的应用上尝试使用缩放控件时遇到了类似的问题。

发现必须将 MapView 的布局设置为“可点击”才能显示缩放控件并使其正常工作。他们甚至不显示地图是否不可点击

这是一个来自 Android SDK 网站的简单布局,显示布局中的标签。

<com.google.android.maps.MapView
    android:id="@+id/mapview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true"
    android:apiKey="Your Maps API Key" />

将该标签放入布局后,一切正常。

【讨论】:

    【解决方案2】:

    你可以像这样使用 ZoomControls。

    ZoomControls mapZoomControl = (ZoomControls) findViewById(R.id.zcMapZoomControl);
    mapZoomControl.setOnZoomInClickListener(new OnClickListener() {
            public void onClick(View v) {
                myMap.getController().zoomIn();
            }
    });
        mapZoomControl.setOnZoomOutClickListener(new OnClickListener() {
            public void onClick(View v) {
                myMap.getController().zoomOut();
            }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-29
      • 1970-01-01
      • 2010-09-20
      • 1970-01-01
      • 2012-06-04
      • 2011-03-29
      • 1970-01-01
      • 2011-01-11
      相关资源
      最近更新 更多