不能点击infowindow android谷歌地图v2

时间:2013-04-22 06:02:47

标签: android android-layout android-intent android-widget android-webview

点击窗口点击时遇到问题。

我的代码如下:

public class GamapA extends FragmentActivity implements OnInfoWindowClickListener{


Marker myMarkerOne;

Gmap gm;

  gm = ((SupportMapFragment)(getSupportFragmentManager().findFragmentById(R.id.map))).getMap();
             gm.setMapType(GoogleMap.MAP_TYPE_NORMAL);


 gm.setOnInfoWindowClickListener(this);

LatLng one = new LatLng(12.786608, 80.221916);

   myMarkerOne = gm.addMarker(new MarkerOptions()
            .position(one)
            .title("Test")
            .snippet("Testing")
            .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN)));       

@Override
    public void onInfoWindowClick(final Marker marker) 
{
        // TODO Auto-generated method stub
        if(marker.getPosition().equals(myMarkerOne))
        {

    Toast.makeText(GamapChF.this, "Hello",Toast.LENGTH_LONG)
    .show();
        }
    }

单击窗口时我没有收到toast信息。提前谢谢。

1 个答案:

答案 0 :(得分:0)

它不会让你敬酒,因为

marker.getPosition()为您提供lat/lng: (23.06831002668264,72.58109997957945)(用于检查此打印日志,如Log.e("marker.getPosition()-->", "" + marker.getPosition());

你正在传递:new LatLng(23.06831, 72.58110);

如您所见,(23.06831002668264,72.58109997957945)(23.06831, 72.58110)都不相等。所以它永远不会给你Toast

所以,Insted of that我将使用Title进行比较或按摩,如:

if (marker.getTitle().equalsIgnoreCase("Start")) {
            Toast.makeText(showMaps.this, "You have click on start -->",
                    Toast.LENGTH_LONG).show();
            Log.e("marker.getPosition()-->", "" + marker.getPosition());
        }