【发布时间】:2011-06-23 22:22:00
【问题描述】:
TL;DR - 我的问题确实是:如何将 UIButton 的标题设置为空字符串,或者在它已经分配了以前的标题后为 null。
我有一个 UIButton,它接受基于 NSString 变量中的文本生成的字符串,因为它的标题使用以下内容:
NSString *MyStringVariable = @"HELLO";
...
[myButton setTitle:MyStringVariable forState:UIControlStateNormal];
为了这个问题,我们假设我在我的 NSString 变量上设置了“HELLO”。然后这使我的 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。
【问题讨论】:
标签: iphone objective-c uibutton