Android

[Kotlin/Android] 네이버 지도 상태창 표시 1 (마커에 메시지 띄우기)

연나연 2024. 8. 20. 11:37

졸린 아침이다..

// 마커 및 정보창 표시
    private fun setMarkerMessage(){
        // 마커 변수 선언 및 초기화
        val marker1 = Marker()
        val marker2 = Marker()

        // infoWindow 변수 선언 및 초기화
        val infoWindow1 = InfoWindow();
        val infoWindow2 = InfoWindow();

        marker1.position = LatLng( 37.39710472617026, 126.97022259235382)
        marker2.position = LatLng(37.396550698344704, 126.97101652622223)

        // 디폴트색은 초록
        // 유량 및 수압 구분값별로 색의 차이를 주는 코드 작성
        marker1.icon = MarkerIcons.YELLOW; marker1.width = 70; marker1.height = 90
        marker2.icon = MarkerIcons.RED; marker2.width = 70; marker2.height = 90

        marker1.map = naverMap
        marker2.map = naverMap

        marker1.setOnClickListener {
            infoWindow1.adapter = object : InfoWindow.DefaultTextAdapter(requireContext()) {
                override fun getText(infoWindow: InfoWindow): CharSequence {
                    return "정보창1"
                }
            }
            // 인포창의 우선순위
            //infoWindow1.zIndex = 10
            // 투명도 조정
            infoWindow1.alpha = 0.9f
            // 인포창 표시
            infoWindow1.open(marker1)
            true
        }

        marker2.setOnClickListener {
            infoWindow2.adapter = object : InfoWindow.DefaultTextAdapter(requireContext()) {
                override fun getText(p0: InfoWindow): CharSequence {
                    return "스타벅스 음료는 너무 비싸요"
                }
            }
            infoWindow2.open(marker2)
            true
        }

    }