공부/Android

GoogleMap을 ViewPager에 fragment에 추가하기.

JangGiraffe 2015. 10. 24. 22:44

 

 

구글맵을 액티비티에 추가할 땐 간단하게 됐는데 뷰페이저 안에 있는 프레그먼트에 추가할때는 간단히 안되네요.. 검색을 좀 해서 해결했습니다.

1. JAVA

private SupportMapFragment fragment;
private GoogleMap mMap;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
FragmentManager fm = getChildFragmentManager();
fragment = (SupportMapFragment) fm.findFragmentById(R.id.signMap);
if (fragment == null) {
fragment = SupportMapFragment.newInstance();
fm.beginTransaction().replace(R.id.signMap, fragment).commit();
}
}
@Override
public void onResume() {
super.onResume();
if (mMap == null) {
mMap = fragment.getMap();
}
if (mMap != null) {
setUpMap();//맵에 대한 각종 설정을 담아놓은 함수입니다. 굳이 넣을 필요 없어요.

}
}

2.XML

<fragment
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/signMap"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_below="@+id/signSearchMap" />

>>여기까지만 하면 맵을 화면에 띄울 수 있습니다.

다음엔 선택한곳에 마커를 생성하고 Geocoder를 이용해 주소를 받아오는 방법을 게시하겠습니다. 코드가 더러운건 양해바래요 ..!

 

 

 

반응형