2013-03-11 3 views
1

Странная проблема, когда я пытаюсь установить titleLabel.text, но он не изменится с текста заголовка по умолчанию. Я прошел через него в отладчике и изучил значение taskTitle, которое правильно соответствует новому значению, но свойство titleButton.titleLabel.text, похоже, не принимает присвоение значения.не может изменить UILabel.titleLabel.text

- (void)setChallengeTitle:(NSString *)taskTitle 
{ 
    titleButton.titleLabel.text = taskTitle; 
    titleButton.titleLabel.font = [UIFont fontWithName:@"Gotham Bold" size:18]; 



    CGSize stringsize = [taskTitle sizeWithFont:[UIFont fontWithName:@"Gotham Bold" size:18]]; 
    //I have to add a little bit since it doesn't seem to calculate the size of gotham correctly 
    int buttonWidth = stringsize.width + 20; 
    if (buttonWidth > 320) 
     buttonWidth = 320; 

    [titleButton setFrame:CGRectMake((320 - buttonWidth)/2 ,10, buttonWidth, 40)]; 
} 
+0

Как насчет 'titleButton' - это может быть ноль? – paulmelnikow

ответ

1

Вы пробовали настройки текста UIButton с помощью методов?

Try:

[titleButton setTitle:taskTitle forState:UIControlStateNormal]

UIControlStateNormal установит название для всех государств.

+0

Yup, что сделал! – MonkeyBonkey

+0

Удивительный! 'UIButton' довольно странные. – RileyE

0

Если он показывает текст по умолчанию, это, вероятно, означает, что он неправильно подключен как IBOutlet.

Проверьте свою ссылку в построителе интерфейса.

Надеется, что это помогает ..

+0

Это правильно подключено, и я могу обновить его, когда я вызываю обновление на него из другого места. Позвольте мне выяснить, каковы различия, и я опубликую. – MonkeyBonkey

Смежные вопросы