2012-02-01 3 views
0

Je suis un débutant iOS, alors s'il vous plaît ours avec moi. J'ai une page blanche avec un bouton centré dedans. Je veux ajouter un autre bouton à la vue, juste en dessous du bouton centré. Comment ferais-je cela? J'ai ajouté le premier bouton comme celui-ci -iOS - comment ajouter un UIButton par rapport à un autre?

float x=60, y=200, dy=50; 
CGRect frame = CGRectMake(x, y, 200, dy); 
UIButton *inboxButton = [[[UIButton alloc] initWithFrame:frame]autorelease]; 
inboxButton.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 
inboxButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter; 

.... 

[theView addSubview:inboxButton]; 

Répondre

1

Calculons Juste le deuxième cadre basé sur la première

CGRect secondFrame = CGRectMake(CGRectGetMinX(frame), 
    CGRectGetMaxY(frame) + 8.0, // some y padding 
    CGRectGetWidth(frame), 
    CGRectGetHeight(frame)); 
+0

Vous chevauchez le premier bouton. – Till

+0

Merci, devrait lire 'CGRectGetMaxY' pas' Min'. –

+0

Oui, ça va faire: D – Till

1

Vous ne dites pas si vous avez besoin que deuxième centrée par lui-même - je suppose que vous voulez juste ci-dessous, aligné à gauche avec la première:

UIButton *outboxButton = [[[UIButton alloc] initWithFrame:CGRectMake(frame.x, 
                    frame.y + dy + 10.0f, 
                    frame.width, 
                    frame.height)] autorelease]; 
[theView addSubview:outboxButton]; 

ce que je fais ici réutilise simplement coordonner l'horizontale du premier bouton. Pour la coordonnée verticale, j'utilise la coordonnée originale et j'ajoute la hauteur et un décalage (10.0f). Les deux, la largeur et la hauteur sont prises à partir du premier bouton, en supposant qu'ils devraient correspondre en taille. Comme vous le verrez, il n'y a aucun moyen de faire implicitement ce calcul, ce que je suppose que vous vouliez vraiment savoir, c'est-à-dire en fournissant simplement quelques arguments de commande.

Questions connexes