2012-10-01 5 views
0

J'ai le code suivant pour redimensionner la hauteur de l'étiquette, mais il ne fonctionne pas. Il montre le texte avec ..... Qu'est-ce que j'ai fait de mal?Taille de redimensionnement UILabel ne fonctionne pas

float storeAddress1YOffset=10; 
float storeAddress1XWidth=scrollView.frame.size.width; 
float storeAddressLabel1YHeight=15; 
UILabel *storeAddressLabel=[[UILabel alloc]initWithFrame:CGRectMake(Xoffset,storeSectionHeight+ storeAddress1YOffset,storeAddress1XWidth, storeAddressLabel1YHeight) ]; 
storeAddressLabel.font=[UIFont fontWithName:@"GillSans" size:15.0f]; 
currentHeight=currentHeight + storeAddress1YOffset + storeAddressLabel1YHeight; 
[storeAddressLabel setText:fullAddress]; 

CGRect labelFrame = storeAddressLabel.frame; 
labelFrame.size = [fullAddress sizeWithFont:storeAddressLabel.font 
          constrainedToSize:CGSizeMake(storeAddressLabel.frame.size.width, CGFLOAT_MAX) 
           lineBreakMode:storeAddressLabel.lineBreakMode]; 
storeAddressLabel.frame = labelFrame; 

Répondre

1

Votre code semble fonctionner pour moi. Il y a quelques variables que vous ne l'avez pas instancier:

float Xoffset = ?; 
float storeSectionHeight = ?; 
float currentHeight = ?; 
NSString *fullAddress = @"?"; 

Aussi bien que vous ne montrent pas de détails sur scrollView ou en ajoutant à storeAddressLabel (je suppose) scrollView comme sous-vue.

Lorsque j'ai rempli ces pièces manquantes, en utilisant un UIView plain, l'étiquette est apparue correctement redimensionnée à une chaîne de test fullAddress. S'il vous plaît inclure un peu plus de votre code, y compris ces pièces manquantes.

+0

Je l'ai eu en travaillant en déterminant la taille de l'image avant d'initialiser l'étiquette de trame. – user1688346

Questions connexes