Cum pentru a simula un utilizator de conducere un traseu într-un MKMapView?

voturi
0

Am nevoie pentru a simula modul în care cererea mea va arăta atunci când un utilizator este de conducere în jurul pentru un demo. Am o MKMapView, cum pot simula aspectul unui utilizator de conducere în jurul căreia se va utiliza funcționalitatea map.userLocation, care, evident, nu vor fi disponibile în demo.

Mulțumiri!

Întrebat 07/11/2009 la 23:47
sursa de către utilizator
În alte limbi...                            


7 răspunsuri

voturi
1

Ei bine, m-am de gând ceva, tocmai am făcut-o, în esență, acest lucru

- (void)moveIcon:(MKAnnotationView*)locationView toLocation:(CLLocation*)newLoc
{
    LocationAnnotation* annotation = [[[LocationAnnotation alloc] initWithCoordinate:newLoc.coordinate] autorelease];
    [locationView setAnnotation:annotation];
    [map setCenterCoordinate:newLoc.coordinate animated:YES];
}

Apoi, eu numesc acest tip într-o buclă între toate nodurile mele cu o ușoară întârziere. Funcționează destul de qell.

Publicat 08/11/2009 la 01:48
sursa de către utilizator

voturi
1

Nici o modalitate de a simula în iPhone simulator. Va trebui să-l încărcați pe dispozitiv și pentru a muta în jurul valorii.

Publicat 08/11/2009 la 00:01
sursa de către utilizator

voturi
0

Am găsit o modalitate mai bună ar fi să subclase MKUserLocation:

class SimulatedUserLocation: MKUserLocation {
    private var simulatedCoordinate = CLLocationCoordinate2D(latitude: 39, longitude: -76)
    override dynamic var coordinate: CLLocationCoordinate2D {
        get {
            return simulatedCoordinate
        }
        set {
            simulatedCoordinate = newValue
        }
    }
}

Apoi adauga ca o adnotare mapView.addAnnotation(SimulatedUserLocation()). (S-ar putea dori , de asemenea , pentru a ascunde locația reală prima mapView.showsUserLocation = false)

iOS ar face adnotarea exact ca utilizator locația reală.

dynamic este utilizat pe proprietate astfel încât schimbarea de coordonate declanșează KVO și se mută pe hartă.

Publicat 19/12/2016 la 18:36
sursa de către utilizator

voturi
0

Pentru a simula de conducere va trebui să stabilească 2 funcționalități de bază:

  1. Citirea CLLocations dintr-o arhiva (pe care ați log în timpul testului de antrenare cu un dispozitiv). În mod ideal, veți face acest lucru bazat pe marcajele de timp pe locații, și anume reproducerea exactă a actualizările locației aceleași care au fost primite în timpul testului de antrenare.

  2. Actualizarea poziției MKAnnotationView dvs. pe hartă în funcție de locațiile citite din jurnal.

Pentru partea 1, să ia o privire la CLLocationDispatch , o clasă la îndemână , care oferă arhivare / dezarhivare de CLLocations și le expediază la unul sau mai mulți ascultători (folosind protocolul CLLocationManagerDelegate).

La rândul 2, să ia o privire la moving-MKAnnotationView .

Publicat 18/05/2011 la 15:27
sursa de către utilizator

voturi
0

Ai putea verifica , de asemenea iSimulate care pretinde a fi capabil de a simula mai multe caracteristici disponibile numai pe iPhone în simulator de iPhone includ CoreLocation. Nu am încercat acest lucru eu însumi atât de kilometraj dvs. poate varia.

Publicat 08/11/2009 la 00:57
sursa de către utilizator

voturi
0

Nu sunt un expert dev iPhone, dar cum vizualizarea hartă a primi coordonatele? Dacă este printr-o funcție care solicită API CoreLocation, ai putea doar să scrie o funcție care generează aleatoriu valori de latitudine și longitudine, la un anumit interval de timp și au puteți vizualiza pe hartă trage coordonatele de acolo în loc? Doar un gand.

Publicat 08/11/2009 la 00:09
sursa de către utilizator

voturi
-1

Raspunsul este nu. Apoi, cum despre adăugarea unui strat de abstractizare între codul și MKMapKit? Puteți face teste xUnit pentru obiectivul tau.

Publicat 09/11/2009 la 03:05
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more