MarkerEventListener.kt
class MarkerEventListener(val context: Context,val contextActivity : Activity): MapView.POIItemEventListener {
override fun onPOIItemSelected(mapView: MapView?, poiItem: MapPOIItem?) {
// 마커 클릭 시
mapView?.invalidate()
val reverseGeoCoder : MapReverseGeoCoder = MapReverseGeoCoder(Define.KAKAO_NATIVE_KEY,poiItem?.mapPoint, FindGeoToAddressListener(),contextActivity)
Log.d("주소 구하기", reverseGeoCoder.startFindingAddress().toString())
}
override fun onCalloutBalloonOfPOIItemTouched(mapView: MapView?, poiItem: MapPOIItem?) {
// 말풍선 클릭 시 (Deprecated)
// 이 함수도 작동하지만 그냥 아래 있는 함수에 작성하자
}
override fun onCalloutBalloonOfPOIItemTouched(mapView: MapView?, poiItem: MapPOIItem, buttonType: MapPOIItem.CalloutBalloonButtonType?) {
// 말풍선 클릭 시
}
override fun onDraggablePOIItemMoved(p0: MapView?, p1: MapPOIItem?, p2: MapPoint?) {
// 드래그해서 마커 이동했을때 이벤트
p1?.mapPoint = p2 // 드래그하고 저장을 했을때 마커를 이동하기 전 위치가 나와서 위치를 바꿔줌
}
}
FindGeoToAddressListener.kt
import android.util.Log
import net.daum.mf.map.api.MapReverseGeoCoder
class FindGeoToAddressListener() : MapReverseGeoCoder.ReverseGeoCodingResultListener {
override fun onReverseGeoCoderFoundAddress(p0: MapReverseGeoCoder?, p1: String?) {
Log.d("p1", p1.toString()) // 주소값
}
override fun onReverseGeoCoderFailedToFindAddress(p0: MapReverseGeoCoder?) {
Log.d("주소찾기","실패")
}
}
MainActivity.kt
class MainActivity : AppCompatActivity() {
lateinit var binding : ActivityMainBinding
private val eventListener = MarkerEventListener(this@MainActivity,this)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater,null,false)
setContentView(binding.root)
binding.mapView.setCalloutBalloonAdapter(CustomBalloonAdapter(layoutInflater,this@MainActivity))
binding.mapView.setPOIItemEventListener(eventListener)
}
...
}
'프로그래밍 > Android' 카테고리의 다른 글
[Android] 기본 버튼 색상이 이상할때.. (0) | 2022.09.23 |
---|---|
[Android] BottomSheetDialogFragment 배경투명 및 모서리 둥글게 (0) | 2022.09.23 |
[Android] 카카오맵 마커 클릭이벤트, 위도경도 구하기 (0) | 2022.09.18 |
[Android] 카카오맵 API 장소검색 (0) | 2022.09.18 |
[Android] 카카오맵 API 'Can`t load DaumMapEngineApi.so file'에러 (0) | 2022.09.18 |
댓글