Code example for GoogleMap

Methods: aW, addMarker

0
/* 
 * Copyright (C) 2012 The Android Open Source Project 
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License. 
 * You may obtain a copy of the License at 
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0 
 * 
 * Unless required by applicable law or agreed to in writing, software 
 * distributed under the License is distributed on an "AS IS" BASIS, 
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
 * See the License for the specific language governing permissions and 
 * limitations under the License. 
 */ 
 
package org.mvp.labs.android.google.map; 
 
import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.SupportMapFragment; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.MarkerOptions; 
 
import android.os.Bundle; 
import android.support.v4.app.FragmentActivity; 
import android.support.v4.app.FragmentTransaction; 
 
/** 
 * Demonstrates how to instantiate a SupportMapFragment programmatically and add a marker to it. 
 */ 
public class ProgrammaticDemoActivity extends FragmentActivity { 
 
    private static final String MAP_FRAGMENT_TAG = "map"; 
    private GoogleMap mMap; 
    private SupportMapFragment mMapFragment; 
 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
 
        // It isn't possible to set a fragment's id programmatically so we set a tag instead and 
        // search for it using that. 
        mMapFragment = (SupportMapFragment) getSupportFragmentManager() 
                .findFragmentByTag(MAP_FRAGMENT_TAG); 
 
        // We only create a fragment if it doesn't already exist. 
        if (mMapFragment == null) { 
            // To programmatically add the map, we first create a SupportMapFragment. 
            mMapFragment = SupportMapFragment.newInstance(); 
 
            // Then we add it using a FragmentTransaction. 
            FragmentTransaction fragmentTransaction = 
                    getSupportFragmentManager().beginTransaction(); 
            fragmentTransaction.add(android.R.id.content, mMapFragment, MAP_FRAGMENT_TAG); 
            fragmentTransaction.commit(); 
        } 
 
        // We can't be guaranteed that the map is available because Google Play services might 
        // not be available. 
        setUpMapIfNeeded(); 
    } 
 
    @Override 
    protected void onResume() { 
        super.onResume(); 
 
        // In case Google Play services has since become available. 
        setUpMapIfNeeded(); 
    } 
 
    private void setUpMapIfNeeded() { 
        // Do a null check to confirm that we have not already instantiated the map. 
        if (mMap == null) { 
            // Try to obtain the map from the SupportMapFragment. 
            mMap = mMapFragment.getMap(); 
            // Check if we were successful in obtaining the map. 
            if (mMap != null) { 
                setUpMap(); 
            } 
        } 
    } 
 
    private void setUpMap() { 
        mMap.addMarker(new MarkerOptions().position(new LatLng(0, 0)).title("Marker")); 
    } 
}