Issue
Does Google allow using MapView versus MapFragments or SupportMapFragments on v2? I have a layer.xml file that is using the SupportMapFragment how do I change it to a MapView while utilizing the LinearLayout and RelativeLayouts I am using below?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn_draw"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text=" Get Directions"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:id="@+id/btn_find"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/str_btn_find"
android:layout_alignParentRight="true" />
<EditText
android:id="@+id/et_location"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:hint="@string/hnt_et_location"
android:layout_toLeftOf="@id/btn_find" />
</RelativeLayout>
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment"/>
</LinearLayout>
How does it change my code as well?
/**
* Shows the users current location on the map
*/
private void showCurrentLocationOnMap(){
lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
mf= (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
map = mf.getMap();
//map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
ll = new PointLocationListener();
boolean isGPS = lm.isProviderEnabled(LocationManager.GPS_PROVIDER);
if (!isGPS){
Intent intent = new Intent("android.location.GPS_ENABLED_CHANGE");
intent.putExtra("enabled", true);
sendBroadcast(intent);
}
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 10000, 10, ll);
}
Solution
Does Google allow using MapView versus MapFragments or SupportMapFragments on v2?
Yes.
how do I change it to a MapView while utilizing the LinearLayout and RelativeLayouts I am using below?
AFAIK, it should simply be:
Step #1: Replace your <fragment>
with:
<com.google.android.gms.maps.MapView
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
Step #2: Follow the instructions on the MapView
class documentation to forward lifecycle events to the view
Answered By - CommonsWare
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.