2009-07-02 9 views
0

J'ai un UIViewController avec un MKMapView dedans. Dans viewDidLoad de ce contrôleur, ajouter le MKMapView:Comment positionner la vue par rapport au parent?

[self.view addSubview:mapView]; 

Je veux montrer cette carte dans une cellule tableview. Dans le cellForRowAtIndexPath du contrôleur tableview :, je fais ceci:

[cell addSubview:mapView.view]; 

où la cellule est un UITableViewCell. J'ai défini le cadre mapview sur

mapView.frame = CGRectMake(0, 0, 200, 100); 

La carte apparaît en bas à gauche de la cellule. Ce qui veut dire que c'est partiellement dans la cellule et aussi hors de celle-ci. La carte chevauche une grande partie de la cellule, mais je veux qu'elle remplisse la cellule et qu'elle soit délimitée par celle-ci. Comment cela peut-il être fait?

Il n'y a pas de xib associé pour ces contrôleurs.

--- EDIT ------

Le tableview est de style comme groupé. Il semble que j'ai juste besoin de faire quelques essais et erreurs pour que la carte corresponde correctement.

+0

Votre question n'est pas claire: essayez-vous d'ajouter * le même objet mapview * que vous avez ajouté à la vue de votre contrôleur de vue dans une cellule de table? Sinon, vous pouvez supprimer la première partie de votre question où vous parlez d'ajouter une carte à un contrôleur de vue. L'ajout d'une carte à un contrôleur de vue et l'ajout d'une carte à une cellule de tableau sont deux choses différentes qui nécessitent une géométrie de trame différente. – Yetanotherjosh

Répondre

0

avez-vous essayé de définir la propriété clipbounds sur la carte?

+0

J'ai défini des clips sur true sur mapview et UIViewController. Ne fait aucune différence – 4thSpace