J'ajoute dynamiquement une vue, mais lorsqu'elle apparaît sur le formulaire, elle se trouve dans le coin supérieur gauche. Où dois-je définir les X et Y de la nouvelle sous-vue?Position de l'iPhone d'une sous-vue?
7
A
Répondre
19
Vous devez définir la propriété de cadre:
myView.frame = CGRectMake(10,10,200,100);
Cela positionnera la vue à l'emplacement (10,10), avec une taille de 200x100
3
D'accord. Notez que vous ne pouvez pas modifier les coordonnées individuellement, comme vous pouvez vous y attendre. Autrement dit, cela ne fonctionne pas:
self.mysubview.frame.origin.x += 17; // FAILS! Not assignable!!
Si elle était une douleur pour calculer toutes les autres coordonnées que vous avez besoin, vous pouvez (a) le sucer ou (b) faire quelque chose comme ce qui suit:
CGRect theFrame = self.mysubview.frame;
theFrame.origin.x += 17;
self.mysubview.frame = theFrame; // this is legal