在MapView中更改缩放控件

jal*_*039 5 android google-maps zoom android-mapview

我想在我的应用程序中更改缩放控件的预定义样式,使其显示为谷歌地图应用程序中的新缩放控件.见下文:

在此输入图像描述

我该怎么做?我一直在四处寻找,但我没有找到任何东西.

提前致谢.

Pra*_*hat 5

你应该有四个图像drawables,即:

  1. 放大(+)启用/禁用
  2. 缩小( - )启用/禁用

将它们放置在MapView布局中ImageViewButton与背景图像一起作为上述drawables.

然后你应该分配onClickListeners,如:

zoomIn.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        mapView.getController.zoomIn()
        checkzoom();
    }
});

zoomOut.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        mapView.getController.zoomOut()
        checkzoom();
    }
});

public void checkzoom() {
    if(mapView.getZoomLevel()==1) // dont know if 0 or 1, just wrote it
    {
        zoomOut.setEnabled(false);
        // or u can change drawable and disable click
    }
    if(mapView.getZoomLevel()==18) {
        zoomIn.setEnabled(false);
        // or u can change drawable and disable click
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑: 放大 缩小


Ser*_*tov 5

我通过这种方式解决了这个问题:禁用内置缩放控件(setBuiltInZoomControls(false)),将自己的按钮添加到UI并添加处理程序以单击按钮事件.