text iPhone / iPad UIButton TitleLabel che non appare

voti
34

Ho creato una griglia di pulsanti. Il codice seguente crea i pulsanti e le visualizza, ma non v'è alcun testo sul pulsante. C'è un'impostazione che mi manca? (Obj-C risposte vanno bene, io sono 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);
È pubblicato 07/03/2010 alle 03:33
fonte dall'utente
In altre lingue...                            


6 risposte

voti
129

Penso che si desidera setTitle: forState:

[button setTitle:@"Baha'i" forState:UIControlStateNormal]
Risposto il 07/03/2010 a 03:41
fonte dall'utente

voti
6

Un UIButton eredita da UIView, quindi un altro modo per aggiungere testo e immagini, è quello di aggiungere visualizzazione secondaria. Esempio:

// 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];
Risposto il 05/05/2011 a 20:14
fonte dall'utente

voti
3
UIButton *  selectCountryBtn =  [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 100, 100)];  

[selectCountryBtn setTitle:@"My Title" forState:UIControlStateNormal];

Qui, devo creare a livello di codice pulsante del campione, e quindi impostare il titolo per il suo stato di controllo normali, è possibile utilizzare il proprio oggetto pulsante per impostare la stringa del titolo, inoltre è anche possibile impostare il testo del titolo per altri stati del controllo dal cambiamento UIControlStateNormal ad un'altra richiesta stati.

Risposto il 02/03/2012 a 08:30
fonte dall'utente

voti
-4
  self.Button_name.titleLabel.text = @"Your title name";
Risposto il 26/02/2013 a 11:57
fonte dall'utente

voti
0

Per rapido Developers-

button.setTitle("Your button Name", forState: .Normal)
Risposto il 08/10/2016 a 11:59
fonte dall'utente

voti
0

Nel mio caso (Swift 4) è stata la seguente:

btnLogin.setTitle("Welcome, " + var_name, for: [])
Risposto il 15/11/2018 a 00:07
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more