728x90
# 실행 화면
# activity_maps.xml
<?xml version="1.0" encoding="utf-8"?>
<fragment
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MapsActivity" />
# MapsActivity.java
package kr.ac.skuniv.map;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
public class MapsActivity extends AppCompatActivity implements OnMapReadyCallback {
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
setTitle("2018305065_전유정");
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
mMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(37.568256, 126.897240),15));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.add(0, 1, 0, "위성 지도");
menu.add(0, 2, 0, "일반 지도");
SubMenu subMenu = menu.addSubMenu("바로가기>>");
subMenu.add(1, 3, 0, "서경대학교");
subMenu.add(1, 4, 0, "인천공항");
subMenu.add(1, 5, 0, "Grand Canyon");
subMenu.add(1, 6, 0, "우리 집");
return true;
}
@Override public boolean onPrepareOptionsMenu(Menu menu) { return super.onPrepareOptionsMenu(menu); }
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
mMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);
return true;
case 2:
mMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
return true;
case 3:
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(37.6149, 127.0134), 15));
return true;
case 4:
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(37.4692, 126.451), 15));
return true;
case 5:
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(36.055084,-112.140823), 15));
return true;
case 6:
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(36.0541, 129.3605), 15));
return true;
}
return false;
}
}
반응형
'전공 공부 > 안드로이드프로그래밍' 카테고리의 다른 글
공공 데이터 포털의 시도별 실시간 측정정보 조회 API를 이용해 실시간측정정보 XML을 Parsing 하여 아래와 같이 <stationName>과 <pm10Value>를 출력하는 프로그램 (0) | 2021.01.13 |
---|---|
공공 데이터 포털의 시도별 실시간 측정정보 조회 API를 이용해 실시간 측정정보 XML을Parsing 전에 출력하는 프로그램 (0) | 2021.01.13 |
DB Helper (0) | 2021.01.08 |
2개의 액티비티 (계산기 EditText, RadioButton, Button) (0) | 2021.01.08 |
CheckBox, RadioButton (선택 항목 사진 출력) (0) | 2021.01.08 |