36 votes

iPhone / iPad UIButton TitleLe texte du label n'apparaît pas

J'ai créé une grille de boutons. Le code suivant crée les boutons et les affiche, mais il ne contient aucun texte. Y a-t-il un paramètre qui me manque? (Les réponses d'Obj-C sont bien, je suis bilingue)

 RectangleF frame = new RectangleF (X + 3, Y + 3, cellWidth - 2, cellHeight - 2);
UIButton button = new UIButton (frame);
button.TitleLabel.Text = "Baha'i";
button.TitleLabel.Font = UIFont.FromName ("Helvetica-Bold", 15);
button.TitleLabel.TextColor = UIColor.Black;
button.TitleLabel.Frame = frame;
button.BackgroundColor = UIColor.FromWhiteAlpha(.5f,.5f);
this.AddSubview (button);
 

132voto

Tobias Cohen Points 14390

Je pense que vous voulez setTitle: forState:

 [button setTitle:@"Baha'i" forState:UIControlStateNormal]
 

6voto

ddiego Points 886

Un UIButton hérite de UIView, une autre façon d’ajouter du texte et des images consiste donc à ajouter une sous-vue. Exemple:

 // My Image
UIImage *buttonImage = [UIImage imageNamed:@"myImage.png"];
UIImageView *buttonImageView = [[[UIImageView alloc] 
    initWithFrame:CGRectMake(0, 0, 
    buttonImage.size.width,buttonImage.size.height)] autorelease];
[buttonImageView setImage:buttonImage];

// My Label
UILabel* titleLabel = [[[UILabel alloc] 
    initWithFrame:CGRectMake(0, 0, 
    buttonImage.size.width, buttonImage.size.height)] autorelease];
titleLabel.text = @"My Text";
titleLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size: 11.0];
titleLabel.textColor = [UIColor blackColor];
titleLabel.backgroundColor = [UIColor clearColor];
titleLabel.textAlignment = UITextAlignmentCenter;

// Create Button with Image and Label
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button addSubview:buttonImageView];
[button addSubview:titleLabel];
 

3voto

RockStar Points 722
rcAdd2.text=[[[countriesDicArray objectAtIndex:row]valueForKey:@"country"]retain];
countryId = [[NSString stringWithFormat:@"%@",[[countriesDicArray objectAtIndex:row]valueForKey:@"cid"]]retain];

[selectCountryBtn setTitle:rcAdd2.text forState:UIControlStateNormal];
[stateNameArray removeAllObjects];

-4voto

  self.Button_name.titleLabel.text = @"Your title name";

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X