我无法更改UILabel的文本。在viewDidLoad中,UILabel的代码如下:
startLabel=[[UILabel alloc] initWithFrame:CGRectMake(75, 395, 200, 30)];
startLabel.text=@"Recording Sound ...";
startLabel.backgroundColor=[UIColor clearColor];
startLabel.textColor=[UIColor whiteColor];
startLabel.font=[UIFont boldSystemFontOfSize:17];
[self.view addSubview:startLabel];
后来,如果我想用以下代码更改文本的标签,它不会在应用程序上更改:
startLabel.text=@"Searching Database ...";
或者[startLabel setText:@"Searching Database ..."];
UILabel不是空的,在调试期间我打印了它,它显示为:
(gdb) po startLabel
<UILabel: 0x2c1a30; frame = (75 395; 200 30); text = 'Searching Database ...';
clipsToBounds = YES; userInteractionEnabled = NO; layer = <CALayer: 0x2ae8f0>>
所以,UILabel中的标签文本改变了,但屏幕上没有更新。
请问有人可以告诉我我错过了什么吗?谢谢。
编辑1:我尝试了performSelectorOnMainThread:
- 对我没有用。
编辑2:我正在使用AVFoundation
和ASIHTTP
类来录制声音并在此处上传录制的文件。 没有使用任何线程。