Java 如何在android谷歌地图上通过触摸屏获取地址信息

Java 如何在android谷歌地图上通过触摸屏获取地址信息,java,android,google-maps,touchscreen,Java,Android,Google Maps,Touchscreen,我在这个网站上尝试了所有答案,但没有一个有效。我正在使用android SDK r_18,并在android 2.2上开发一个应用程序。我仍然不知道为什么示例不起作用 如果我添加mapView.setOnTouchListener(这个)toonCreate()下面的函数只工作一次。当函数返回false时,它将不再工作 public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == 1)

我在这个网站上尝试了所有答案,但没有一个有效。我正在使用android SDK r_18,并在
android 2.2
上开发一个应用程序。我仍然不知道为什么示例不起作用

如果我添加
mapView.setOnTouchListener(这个)
to
onCreate()
下面的函数只工作一次。当函数返回false时,它将不再工作

public boolean onTouch(View v, MotionEvent event) {     
    if (event.getAction() == 1) {                
        GeoPoint p = mapView.getProjection().fromPixels(
            (int) event.getX(),
            (int) event.getY());
            showToast("if 11");
            mapCon = mapView.getController();
            mapCon.animateTo(p);
            //mapCon.setZoom(mapCon.zoo);
    }       
    else
    if (event.getAction() == 2)
    {
        showToast("if 22");
      GeoPoint p = mapView.getProjection().fromPixels(
      (int) event.getX(),
      (int) event.getY());
      mapCon = mapView.getController();
      mapCon.animateTo(p);
    }
    else
        if (event.getAction() == 0)
        {
            showToast("if 00");
        }

    return (super.onTouchEvent(event));

}

要获取地址,您必须使用地理编码器。现在,当您使用GeoCoder时,android的其他API中存在一些错误


使用2.1测试GeoCoder的内容,因为在你的问题中没有足够的信息说明你已经在做什么,剩下要做什么,以及你到底在使用什么语言,我会把这些信息放在上面,直到你把这些信息放在你的问题中

我最近用谷歌地图创建了一个android应用程序,并使用这篇文章让谷歌地图正常工作,所以我可以告诉你这是可行的,如果你在应用程序中使用Javascript,看看这篇文章,它应该会帮助你解决这个问题

我使用的方法是“mapView.SetBuilTinZoomControl(true);”


当我取下它时,我开始使用触摸屏

我认为这是为了让你的一切都正常工作,你只是不能让信息窗口弹出当你点击一家商店,是吗?你有地图上显示的所有商店的位置吗?我正在使用java进行编码。实际上,我对onTouchEvent()和onTab()函数有问题。我尝试了很多方法,但这些功能都不起作用。谢谢。我将为GeoCoder尝试2.1。在onTouchEvent中,尝试始终返回false。这将解决您的问题,您还可以使用mapView.SetBuilTinZoomControl(true);当android设备不支持多点触摸时,此方法很重要。当我重新运行函数true时,此方法仅在第一次运行。第一次单击后,onTouch()函数不起作用。