Új hozzászólás Aktív témák

  • trisztan94

    őstag

    Sziasztok!

    WP8-al szarakodom a térképpel. Egy nagyon egyszerű dolgot szeretnék megvalósítani:

    Van egy térkép, beméri a juzer pozícióját, rázoomol - ez megvan
    ApplicationBar, azon egy ikon, amire nyomva egy pushpin-t rak le a pozíciónkra

    A második dologgal gyűlt meg a bajom. Így kérem le a felhasználó pozícióját:

    private async void UpdateMap()
    {
    Geolocator geolocator = new Geolocator();
    geolocator.DesiredAccuracyInMeters = 10;

    Geoposition position = await geolocator.GetGeopositionAsync(TimeSpan.FromMinutes(1), TimeSpan.FromSeconds(30));

    var GPSCoorCenter = new GeoCoordinate(position.Coordinate.Latitude, position.Coordinate.Longitude);

    SetLocationMap.SetView(GPSCoorCenter, 17D);
    }

    Ez teljesen jól működik, szépen rámegy a pozíciómra. A legnagyobb probléma a pushpinnel kapcsolatban az, hogy nem tudom hogyan kellene lekérni a felhasználó pozícióját a pushpin lerakásához.

    A geolocator aszinkron szerzi meg a pozíciót, ezért be kell rakni az "async" modifiert a metódusba, ami viszont csak void return értéket enged, tehát nem adja vissza a pozíciót.

    Egy külön metódusban van az ApplicationBarban lévő ikon kattintás kezelője:

    void savePositionButton_Click(object sender, EventArgs e)
    {
    MapLayer layer = new MapLayer();
    SetLocationMap.Layers.Add(layer);
    Pushpin pp = new Pushpin();

    MapOverlay overlay = new MapOverlay();
    overlay.Content = pp;
    layer.Add(overlay);
    layer[0].GeoCoordinate = new GeoCoordinate();
    }

    A legutolsó sor a lényeges: layer[0].GeoCoordinate = new GeoCoordinate();

    Ez adja meg a pushpin helyzetét, de nem tudom, hogy hogyan tudnám lekérni a jelenlegi pozíciót..

    Valakinek ötlet? :F :F

    Bocsi a fogalmazásért, baromira meg vagyok fázva, a kiló cataflam meg kábít :DDD

    https://heureka-kreativ.hu

Új hozzászólás Aktív témák