2011-10-07 2 views
0

Je rencontre un problème avec le redimensionnement de mon bouton avec CGRectMake. Comme vous pouvez le voir ci-dessous, cela devrait fonctionner, mais cela ne change pas du tout.Problème avec CGRectMake pour le bouton Taille

GameTwo = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
GameTwo.titleLabel.font = [UIFont systemFontOfSize:22]; 
GameTwo.titleLabel.lineBreakMode = UILineBreakModeHeadTruncation; 
[GameTwo setTitle:(@"Game Two") forState:UIControlStateNormal]; 
GameTwo.frame = CGRectMake(10, 10, 100, 50); 
[GameTwo addTarget:self action:@selector(gameTwo) forControlEvents:UIControlEventTouchUpInside]; 
[self.view addSubview:GameTwo]; 

Je suppose que j'ai aussi deux questions. Comment changer la taille du bouton en fonction du mode portrait, puis en mode paysage.

+2

Savez-vous à quoi ressemblera un bouton de 8x3 pixels? – Joe

+0

+1 Joe Je l'ai changé. –

+1

Bien mieux peut-être maintenant que vous pouvez voir quelque chose d'intéressant, maintenant consultez cet article http://www.techotopia.com/index.php/IOS_4_iPhone_Rotation,_View_Resizing_and_Layout_Handling et allez à la section intitulée "Mise en page de codage et les changements de taille" – Joe

Répondre

0
GameTwo = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
GameTwo.titleLabel.font = [UIFont systemFontOfSize:22]; 
GameTwo.titleLabel.lineBreakMode = UILineBreakModeHeadTruncation; 
[GameTwo setTitle:(@"Game Two") forState:UIControlStateNormal]; 
GameTwo.frame = CGRectMake(10, 10, 100, 50); [GameTwo addTarget:self 
action:@selector(gameTwo) 
forControlEvents:UIControlEventTouchUpInside]; [self.view 
addSubview:GameTwo]; 

Fonctionne parfaitement. (C'est ce qui était dans la question originale) Le problème était que j'essayais d'utiliser une autre fonction pour placer le bouton devrait aller. Je n'ai pas compris que les deux premières variables dans ce cas (10, 10...) étaient le placement du bouton. Maintenant oui. À la vôtre.

1

Une bonne règle empirique pour "Cela devrait fonctionner, mais cela ne change pas du tout" Les bugs sont à rechercher ailleurs.

Avez-vous vérifié minutieusement l'implémentation de la classe GameTwo (et les superclasses)? Avez-vous défini un masque à réarmement automatique? Quelque part, définissez-vous le cadre sur une notification de modification des limites?

+0

C'est une bonne règle. Je l'ai compris en fait. Permettez-moi de poster la réponse. Désolé pour ça. –

Questions connexes