2010-02-17 19 views
0

Je suis nouveau au développement de l'iphone. Je crée une application de carte. J'ai créé la barre d'outils avec un bouton sous la carte. Lorsque je clique sur le bouton, il devrait afficher une vue d'alerte montrant l'emplacement actuel et demandant de mettre à jour. sur OK en cliquant vue alerte devrait ouvrir ma carte avec l'emplacement actuel et ANNULER pour fermer l'alerte action du bouton view.The est défini dans la méthodeComment trouver l'emplacement actuel de l'iphone et le mettre à jour

-(IBAction) gosearch : (id) sender{ 
    NSLog(@"inside go search"); 

    } 

Que dois-je faire pour atteindre mes task.I ont ajouté noyau cadre de localisation.Mais je ne sais pas comment procéder.J'ai vu certaines méthodes intégrées à utiliser à partir de ce lien http://iappdevs.blog.co.in/2008/12/06/get-current-location-sample-example-iphone-programming/ mais je ne suis pas en mesure de l'implémenter.Veuillez me guider.Merci.

Répondre

1

D'où vient votre problème? Avez-vous un délégué de localisation principal qui obtient des mises à jour de localisation? Vous devez commencer à l'emplacement central en utilisant ces méthodes:

Dans applicationdidfinishingLauncing()

{ 
self.locationManager = [[[CLLocationManager alloc] init] autorelease]; 
self.locationManager.delegate = self; // Tells the location manager to send updates to this object 
[locationManager startUpdatingLocation]; 

Cela obtenir l'emplacement central de vous rappeler qu'il obtient des mises à jour sur l'emplacement, en commençant par un endroit difficile, mais d'autres mises à jour devraient vous permettre d'obtenir une mise au point plus précise.

+0

La carte est chargée initialement avec l'emplacement désiré, en cliquant sur le bouton dans la barre d'outils, elle devrait afficher l'emplacement actuel – Warrior

+0

Est-ce que cela fonctionne dans le simulateur? (En général) – Warrior

+1

Simulator ne simule aucun comportement du gestionnaire de position. – Giao

2

le composant MapKit MKMapView affiche la position actuelle tout seul, vous n'avez rien à faire.

En fait, en interne, il instancie un CLLocationManager et commence à mettre à jour l'emplacement pour obtenir des événements de position en direct. quand il obtient ces positions, il les affiche comme un point bleu, avec des cercles avec des rayons différents pour indiquer la précision, mais cela est fait automatiquement.

Pour déclencher l'affichage de la position actuelle sur MKMapView, réglez simplement showsUserLocation sur YES sur votre instance MKMapView et vous obtiendrez ce point bleu affiché et mis à jour en temps réel.