UIView.hidden不会马上工作

时间:2015-06-14 12:40:36

标签: ios objective-c iphone uitableview uiview

我有一个带有UITableView和UIView的UIViewController(见打击)。当我在某处打电话给hiddenLoadingView时,UIView仍在显示,然后在10-20秒后解散,为什么?

- (void)viewDidLoad {
    ....
    self.tableView = [[[UITableView alloc] init] autorelease];
    [self.view addSubview:self.tableView];

    self.loadingView = [[[UIView alloc] init] autorelease];
    [self.view addSubview:self.loadingView];
}

- (void)hiddenLoadingView {
    NSLog(@"%@", [NSNumber numberWithBool:self.loadingView.hidden]);
    [self.loadingView setHidden:YES];
    NSLog(@"%@", [NSNumber numberWithBool:self.loadingView.hidden]);
}

2 个答案:

答案 0 :(得分:3)

务必从主线程调用hiddenLoadingView。听起来你可能会从某个异步方法的完成块中调用它。

答案 1 :(得分:0)

你必须从主线程调用UI更改。

dispatch_async(dispatch_get_main_queue(), ^{
// do UI related work here
})