2013-04-07 18 views
9

V2 eşleştirmelerini kullanma.GoogleMap OnMarkerClickListener ürününün çalışmaz olması

Temel olarak, işaretleyicilerin eklenmesi de dahil olmak üzere çalışmayı tamamladım.

Ancak, işaretleyici dokunulduğunda işlem yapmanıza gerek, bu yüzden bir işleyici yükledim:

thisMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { 

    @Override public boolean onMarkerClick(Marker marker) { 
     // Take some action here 
     return true; 
    } 

} 
); 

Tek sorun olduğunu - onMarkerClick() hiç çağrılan olmadı. Nedenini göremiyorum - harita ilk olarak oluşturulduğunda ve aynı zamanda işaretçi yerleştirildikten sonra dinleyiciyi yaratmayı denedi, fark yok.

?

cevap

-1

Bunun yerine OnInfoWindowClickListener'ı kullanarak çalışmaya başlaması için yönetilir. Marköre neden tepki vermediğini bilmiyorum.

6

Bu benim için çalışıyor:

GoogleMap mMap; 
Marker marker_1; 

harita başlatılıyor sonra bunun için bir dinleyici ekleyin. o "gerçek" döndürürse

mMap.setOnMarkerClickListener((OnMarkerClickListener) this); 

Ve eğer bir işaretçiyi tıklayıp dönmek tıklama etkinliği properly.If ele ediliyor, bu

/** 
* handle marker click event 
*/  
@Override 
public boolean onMarkerClick(Marker marker) { 
    // TODO Auto-generated method stub 
    if(marker.equals(marker_1)){ 
     Log.w("Click", "test"); 
     return true; 
    } 
     return false;   
} 

diyoruz yanlış sadece her zamanki gibi bilgi penceresi açılır . Android belgelere göre

, dinleyici olayı tükettiği true döner tıklandığında işaretleyici (yani varsayılan davranış ortaya çıkmaz), aksi (yani varsayılan davranış gerçekleşmelidir) yanlış. Varsayılan davranış, fotoğraf makinesinin haritaya taşınması ve bilgi penceresinin görünmesidir.

0

GoogleMap mMap;

kullanımı bu:

mMap.setOnMarkerClickListener ((OnMarkerClickListener) Bu); Ve değil ve mMap.setOnMarkerClickListener (OnMarkerClickListener);

0
Bu kullanabilirsiniz

basitçe Snippet:

onMapReady (GoogleMap googlemap) olarak
import com.google.android.gms.maps.GoogleMap.OnMarkerClickListener; 

GoogleMap mGoogleMap; 
Marker marker_1; 

ekleyin:

mGoogleMap.setOnMarkerClickListener(new OnMarkerClickListener() { 
     @Override 
     public boolean onMarkerClick(Marker marker) { 

      // TODO Auto-generated method stub 
      if(marker.equals(marker_1)){ 
       Log.w("Click", "test"); 
       return true; 
      } 
      return false; 

     } 
    }); 
İlgili konular