GMapCamera
GMap
문제
MapsActivity.java
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);
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
setContentView(R.layout.activity_maps);
setTitle("1208practice");
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);
//MenuItem add (int groupId, int itemId, int order, CharSequence title)
//groupId : 항목의 그룹을 구성할 때 지정. 그룹 소속이 아니라 단독 항목일때는 NONE(0)으로 준다.
//itemId : 항목의 고유한 ID이며, 항목 선택 시 ID로 어떤 항목을 선택했는지 알아낸다.
//order : 메뉴의 순서를 지정, NONE(0)이면 추가된 순서대로 나타난다.
//title, titleRes : 메뉴 항목의 캡션 문자열이며 문자열 상수 또는 리소스 문자열 ID를 준다.
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(37.5928, 127.0171), 15));
return true;
}
return false;
}
}