正在尝试更新标签,同时执行不同的任务。我搜索,用这种方式使用不同的选项和endup但它仍然无法正常工作:正在更新主线程上的标签不起作用
[processStatusLable performSelectorOnMainThread:@selector(setText:) withObject:@"Creating your account..." waitUntilDone:NO];
DCConnector *dccon = [DCConnector new];
ContactsConnector *conCon = [ContactsConnector new];
if (![dccon existUsersData]) {
[dccon saveUsersInformation:device :usDTO];
//created account
//get friends -> Server call
[processStatusLable performSelectorOnMainThread:@selector(setText:) withObject:@"Checking for friends..." waitUntilDone:NO];
NSMutableArray *array = [conCon getAllContactsOnPhone];
// save friends
[processStatusLable performSelectorOnMainThread:@selector(setText:) withObject:@"Saving friends.." waitUntilDone:NO];
if ([dccon saveContacts:array]) {
[processStatusLable performSelectorOnMainThread:@selector(setText:) withObject:@"Friends saved successfully.." waitUntilDone:NO];
}
}
是越来越执行的最后performSelector
(至少我看到标签上的文字改变视图),但所有其他选择没有工作。任何想法为什么?
编辑1
- (void)updateLabelText:(NSString *)newText {
processStatusLable.text = newText;
}
尝试waitUntilDone:是的,如果你可以上传你从@selector调用的方法,那将是非常棒的... – 2013-05-01 15:22:04
也许它在UILabel中显示,但它变化太快? – 2013-05-01 15:24:36
它不应该这个过程需要像一分钟 – SaifDeen 2013-05-01 15:26:09