2010-07-09 10 views
7

W IB Mam widoku z UIButton z niestandardowego typu, to nie ma obrazu, a tytuł jest ustawiony jako „#placeholder”Zatrzymanie zwyczaj UIButton resetowania titleLabel domyślne IB na razie wypalania

Widok jest dołączony do klasy, która zapewnia IBOutlet i IBAction dla przycisku.

ustawić tytuł przycisk z tym: ViewClass.ButtonOutlet.titleLabel.text = @"%@",stringifiedVariable; kiedy muszę.

To działa dobrze. Jednak po kliknięciu przycisku, tytułLabel.text powraca do "#placeholder".

Próbowałem odznaczać "Wyróżnione dopasuj obraz" w sekcji Rysowanie (zakładka atrybuty) w Inspektorze, ale zachowanie było nadal takie samo.

Czy można zapobiec tej zmianie? czy istnieje lepszy wzór, którego powinienem używać?

Odpowiedz

12

UIButton ma specjalną metodę ustawiania etykiety.

  • (void) setTitle: (NSString *) Tytuł forState: (UIControlState) stan

Na przykład

NSString *buttonText = [NSString stringWithFormat:@"%@",stringifiedVariable]; 
[ViewClass.ButtonOutlet setTitle:buttonText forState:UIControlStateNormal]; 

Sprawdź dokumentację po więcej szczegółów.

+0

Dzięki za szybką odpowiedź –

0

Jeśli chcesz, aby tekst się nie zmieniał po kliknięciu, najprostszym sposobem jest wybranie tytułu z przycisku w IB, a następnie użycie metody setTitle: forState: od Jongsma.

+0

Początkowo próbowałem tego; przycisk nie wyświetlał żadnego tekstu –

Powiązane problemy