如何在UITableViewCell上立即更改UIProgressView?

Tin*_*ool 7 cocoa-touch uitableview uikit uiprogressview ios

我在UITableViewCell上放了一个UIProgressView,就像这样:

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"downloadcell"];
if(cell==nil)
{
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle
                                 reuseIdentifier:@"downloadcell"] autorelease];
    UIProgressView* downPreView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault];
    downPreView.tag = 123;
    downPreView.frame = CGRectMake(400,70, 200,10);
    [cell.contentView addSubview:downPreView];
}
Run Code Online (Sandbox Code Playgroud)

当下载大小发生变化时,我这样做:

    UIProgressView* downPreView = (UIProgressView*)[cell viewWithTag:123];
downPreView.progress = downloadPre;
Run Code Online (Sandbox Code Playgroud)

但是,只有在我触摸单元格或其他单元格之后,downPreView的外观才会立即改变,那么如何在UITableViewCell上立即更改UIProgressView?

Tin*_*ool 4

在其上执行SelectorOnMainThread,一切都很好。