centrer la mapView sur lutilisateur

mikeysanscmikeysansc Membre
septembre 2010 modifié dans API AppKit #1
je sais je sais je suis nul mais ça fait 2 jours que je bloque !
je voudrais centrer ma mapView sur la position de l'utilisateur

voici mon bout de code
<br />#import &lt;UIKit/UIKit.h&gt;<br />#import &lt;MapKit/MapKit.h&gt;<br /><br />@interface FirstViewController : UIViewController {<br />	MKMapView *mapView;<br />	MKUserLocation *userlocation;<br /><br />}<br /><br />@end


<br />- (void)viewDidLoad {<br />&nbsp; &nbsp; [super viewDidLoad];<br />	<br />	// instancier la carte<br />	mapView=[[MKMapView alloc] initWithFrame:self.view.bounds];<br />	<br />	//ajouter la position actuelle sur la carte<br />	mapView.showsUserLocation = YES;<br />	//choisir le type de la carte<br />	mapView.mapType=MKMapTypeSatellite;<br />	<br />	// le zoom<br />	MKCoordinateSpan span;<br />	span.latitudeDelta=0.05;<br />	span.longitudeDelta=0.05;<br />	<br />	<br />	//definir les coordonees de l&#39;utilisateur<br />	CLLocationCoordinate2D Coordinates;<br />	Coordinates.latitude= userLocation;<br />	Coordinates.longitude= userLocation;<br />	<br />	MKCoordinateRegion Region;<br />	Region.span=span;<br />	Region.center=Coordinates;<br />	<br />	// centrer la carte sur Paris<br />	[mapView setRegion:Region animated:TRUE];<br />	<br />	// ajouter la carte à  la vue<br />	[self.view insertSubview:mapView atIndex:0];<br />}


je sais que ça vient de userLocation mais je ne sais pas comment déclarer ses variables
désolé
merci d'avance

Réponses

  • CéroceCéroce Membre, Modérateur
    14:44 modifié #2
    C'est clair, t'es nul  >:)
    Mais je vais être indulgent parce que je passe moi-aussi des jours entiers sur des trucs idiots.

    CLLocationCoordinate2D est une structure:
    <br />typedef struct {<br />&nbsp;  CLLocationDegrees latitude;<br />&nbsp;  CLLocationDegrees longitude;<br />} CLLocationCoordinate2D;<br />
    


    avec:
    typedef double CLLocationDegrees;
    


    Chaque coordonnée (latitude ou longitude) est donc exprimée sous la forme d'un nombre réel double-précision.
    Pour obtenir les coordonnées depuis un objet MKUserLocation:

    CLLocationCoordinate2D coord = userLocation.location.coordinate;
    
  • mikeysanscmikeysansc Membre
    14:44 modifié #3
    comme tu le dis je suis vraiment nul  :'( :'(
    même avec ton aide ça ne fonctionne pas j'ai toujours userLocation de non déclaré

    j'aime bien le fouet ! ;)
    C'est clair, t'es nul  >:)
  • CéroceCéroce Membre, Modérateur
    14:44 modifié #4
    Quel est ton problème exact ?
    As-tu un message du compilateur ou quelque chose comme ça ?
  • AliGatorAliGator Membre, Modérateur
    14:44 modifié #5
    Quel est également ton niveau de programmation (as-tu déjà  fait du C ? fait de l'Objective-C avant cela ? Fait des applis iPhone ?)

    Parce que là  j'ai pas lu tout ton code mais ton erreur semble être de ce que tu dis juste la variable userLocation qui est non déclarée (il est sensé sortir d'où ton "userLocation") et en même temps c'est le cas, je veux dire l'erreur que tu indiques est assez explicite quand même ! Je veux dire si tu bloques là  et comprends pas l'erreur c'est peut être un peu tôt pour attaquer les choses plus compliquées, faut p'tet se recentrer sur un truc plus simple (tutos, bouquins pour apprendre la prog et l'ObjC)... ne cherche pas à  aller trop vite en besogne, non ?

    Ou alors j'ai pas compris le problème...
  • mikeysanscmikeysansc Membre
    14:44 modifié #6
    merci désolé pour le dérangement !
    je reviendrai quand je saurai bien programmer
  • AliGatorAliGator Membre, Modérateur
    14:44 modifié #7
    Le prends pas mal hein, c'est juste que c'est un peu étonnant de voir une question sur le MapKit & co si tu débutes, c'est pas le meilleur point de départ c'est tout, autant commencer simple.
    Tu peux aller faire un tour dans notre section "Formations" ou "Tutoriels" ou sinon regarder les bouquins qui sont conseillés sur le site (comme "Cocoa Programming" de Aaron Hillegass, très réputé, pédagogique et reconnu, pour ne citer que lui), ça t'aidera sans doute à  avancer plus efficacement que de foncer tête baissée, car si tu butes sur un problème comme celui que tu évoques dès le début, tu risques d'être encore plus paumé très rapidement quand tu aurais d'autres soucis plus complexes si tu n'as pas consolidé les bases d'abord. On est tous passés par là , c'est normal, faut y aller progressivement ;)
  • maxi_moussemaxi_mousse Membre
    14:44 modifié #8
    Bin oui regarde avant c'est Ali qui posait les questions... il y a 5 ans  :o
  • KiwixKiwix Membre
    septembre 2010 modifié #9
    dans 1285310559:

    Bin oui regarde avant c'est Ali qui posait les questions... il y a 5 ans  :o


    Merci pour ce lien, je me suis bien marré à  lire ces posts! Et comme en ce moment je suis en mode "questions stupides que j'aurais dû me poser il y a longtemps", ça fait du bien! 

    Au fait, il est sorti le bouquin? Où est ce qu'on peut l'acheter?  :D
Connectez-vous ou Inscrivez-vous pour répondre.