Agregar un mapa a una aplicación

Los siguientes pasos describen cómo agregar un mapa a una aplicación mediante la clase RichMapField y cómo configurar el centro y el nivel de zoom del mapa. El mapa resultante en la aplicación se muestra en la siguiente imagen:

Esta pantalla muestra un objeto RichMapField con un centro y nivel de zoom específicos.
  1. Importe las clases y las interfaces necesarias.
    import net.rim.device.api.lbs.maps.*;
    import net.rim.device.api.lbs.maps.model.*;
    import net.rim.device.api.lbs.maps.ui.*;
    import net.rim.device.api.ui.*;
    import net.rim.device.api.ui.container.*;
  2. Cree el marco de la aplicación ampliando la clase UiApplication. En main(), cree una instancia de la clase nueva e invoque enterEventDispatcher() para activar la aplicación para recibir eventos. En el constructor de la aplicación, invoque pushScreen() para mostrar la pantalla personalizada para la aplicación. La clase MapScreen que se describe en el paso 3, representa la pantalla personalizada.
    public class RichMapFieldDemo extends UiApplication
    {
        public static void main(String[] args)
        {
            RichMapFieldDemo theApp = new RichMapFieldDemo();
            theApp.enterEventDispatcher();
        }
        public RichMapFieldDemo()
        {
            pushScreen(new MapScreen());
        }
    }
  3. Cree el marco para la pantalla personalizada ampliando la clase FullScreen. En el constructor, invoque super() para crear un menú predeterminado.
    class MapScreen extends FullScreen
    {
        public MapScreen() 
        {
            super( FullScreen.DEFAULT_CLOSE | FullScreen.DEFAULT_MENU );
        }
    }
  4. En el constructor de pantalla, invoque MapFactory.getInstance() para crear una instancia de la clase MapFactory y, a continuación, invoque generateRichMapField() para generar el RichMapField.
    RichMapField map = MapFactory.getInstance().generateRichMapField();
  5. En el constructor de pantalla, invoque getAction() para crear una instancia de la clase MapAction. Invoque setCentreAndZoom() para especificar el centro y el nivel de zoom del mapa. Invoque add() para agregar el campo a la pantalla.
    MapAction action = map.getAction();
    action.setCentreAndZoom(new MapPoint(43.47462, -80.53820), 2);
    add(map);

¿Le ha resultado útil esta información? Envíenos sus comentarios.