관리 메뉴

LC Studio

코딩(평생교육 MAP) 본문

프로젝트/평생교육MAP

코딩(평생교육 MAP)

Leopard Cat 2021. 12. 18. 19:10

실력과 시간의 한계로 기능을 최소화하여 앱을 완성시키기로 했다.

 

- 구글맵 연동하기

- 시민대학 위치 Marker 추가(캠퍼스, 권역별 학습장, 대학연계)

- Marker 클릭시 기관명, 주소, 전화번호, 특화영역 보이기

 


1. 구글맵 연동하기

Google Maps Activity로 프로젝트를 생성했다.

google cloud API에 프로젝트를 등록했다.

 

2. 시민대학 위치 Marker 추가(캠퍼스, 권역별 학습장, 대학연계)

public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;


        // Add a marker in KC대
        LatLng KC = new LatLng(37.548301, 126.854803);
        mMap.addMarker(new MarkerOptions().position(KC)
                .title("KC대")
                .snippet("특화영역: 나눔")
                .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_YELLOW))
        );

구글맵이 실행되면, 

그 밑으로 30여개의 marker가 보이도록 만들었다.

위와같은 각 장소의 이름, 특화영역 등의 정보가 보이도록 marker을 만들었다.

 

3. 기관 종류별로(캠퍼스, 권역별 학습장, 대학연계) 표시하기

 

사용자가 캠퍼스, 권역별 학습장, 대학연계 중 원하는 종류의 기관만 볼 수 있도록 만들었다.

전체보기, 캠퍼스, 권역별 학습장, 대학연계 버튼을 누르면 해당하는 기관만 Marker로 표시된다.

 

해당하지 않는 마커는 숨겨지는 기능을 구현하고 싶었지만 실패했다.

결국 일일이 구글맵을 초기화시키고, 해당하는 기관의 Marker만 새로 만드는 방식으로 구현했다.

ImageButton buttonAll = (ImageButton) findViewById(R.id.all_btn);
        buttonAll.setOnClickListener(new ImageButton.OnClickListener() {
            @Override
            public void onClick(View view) {
                mMap.clear();
                
                해당하는 기관 Marker 추가....

 

반응형