GoogleMapのマーカーにクリックイベントを設定したい
AndroidStudioでMapsSDKを使っています。
マーカーのクリックイベントを実装したくてonMarkerClickを追加しましたが、実際にテストすると反応しません。
サンプルなどを参考にしてもうまくいかずに困っています。
該当のソースコード
kotlin
1package com.example.maptest 2 3import android.support.v7.app.AppCompatActivity 4import android.os.Bundle 5import com.google.android.gms.common.api.GoogleApiClient 6 7import com.google.android.gms.maps.CameraUpdateFactory 8import com.google.android.gms.maps.GoogleMap 9import com.google.android.gms.maps.OnMapReadyCallback 10import com.google.android.gms.maps.SupportMapFragment 11import kotlin.math.log 12import com.google.android.gms.maps.GoogleMap.OnMarkerClickListener 13import android.graphics.BitmapFactory 14import android.graphics.Bitmap 15import android.util.Log 16import com.google.android.gms.maps.model.* 17 18 19class MapsActivity : AppCompatActivity(), OnMapReadyCallback, OnMarkerClickListener { 20 21 var TAG ="hoge" 22 23 private lateinit var mMap: GoogleMap 24 25 override fun onCreate(savedInstanceState: Bundle?) { 26 super.onCreate(savedInstanceState) 27 setContentView(R.layout.activity_maps) 28 val mapFragment = supportFragmentManager 29 .findFragmentById(R.id.map) as SupportMapFragment 30 mapFragment.getMapAsync(this) 31 } 32 33 override fun onMapReady(googleMap: GoogleMap) { 34 mMap = googleMap 35 36 val sydney = LatLng(-34.0, 151.0) 37 var markerOptions = MarkerOptions() 38 markerOptions.position(sydney) 39 markerOptions.title("Marker in Sydney") 40 var marker1 = mMap.addMarker(markerOptions) 41 mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)) 42 43 44 } 45 46 override fun onMarkerClick(marker : Marker?): Boolean { 47 Log.w(TAG,"huga") 48 return true 49 } 50 51} 52
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。