Как установить для заголовка UIButton значение null или пустую строку

TL; DR - Мой вопрос действительно таков: как установить заголовок UIButton на пустую строку или null после того, как ему уже был назначен предыдущий заголовок.

У меня есть UIButton, который принимает строку, сгенерированную на основе текста из переменной NSString, в качестве заголовка, используя следующее:

NSString *MyStringVariable = @"HELLO";
...
[myButton setTitle:MyStringVariable forState:UIControlStateNormal];

Ради этого вопроса, давайте просто предположим, что у меня установлено «HELLO» в моей переменной NSString. После этого у моего UIButton будет заголовок "HELLO", очевидно ...

Затем у меня есть другая кнопка, которая удаляет этот заголовок из UIbutton, например:

[myButton setTitle:@"" forState:UIControlStateNormal];

Который скрывает заголовок UIButton (то есть теперь он выглядит как пустой UIButton), но при дальнейшем рассмотрении заголовок действительно существует. Если я добавлю следующее в свой UIViewController:

- (void)viewWillAppear:(BOOL)animated{
    NSLog(@"Title: %@", myButton.titleLabel.text);
}

и буду перемещаться туда и сюда из этого представления, заголовок продолжит регистрироваться в консоли, даже если я установил текст на @ "".

Я пробовал следующие методы, чтобы действительно удалить заголовок:

[myButton setTitle:@"" forState:UIControlStateNormal];
[myButton setTitle:NULL forState:UIControlStateNormal];
[myButton setTitle:nil forState:UIControlStateNormal];
myButton.titleLabel.text = @"";

Странно, если я установил заголовок на @ "" (с пробелом):

[myButton setTitle:@" " forState:UIControlStateNormal];

заголовок обновляет правильно, и затем в консоль регистрируется пространство, а не старый заголовок.

Мой вопрос действительно таков: как установить заголовок UIButton на пустую строку или null после того, как ему уже был назначен предыдущий заголовок.

5
задан a1phanumeric 23 June 2011 в 22:27
поделиться