如何在UITableView中的每个单元格上同时为UIProgressView设置动画?

时间:2015-06-19 01:05:57

标签: ios objective-c uitableview uiprogressview

我有一个UITableView的自定义单元格。自定义单元格具有UIProgressView。我想为所有单元格同时为每个单元格的progressView设置动画的进度。动画应该从viewDidAppear开始。

1 个答案:

答案 0 :(得分:0)

您可以使用NSTimer来控制动画并创建一个全局progressView来控制单元格' progressView。所以:

UIProgressView *progressGlobal;

- (void)viewDidAppear:(BOOL)animated
{
    NSTimer *timer = [NSTimer timerWithTimeInterval:1 target:self selector:@selector(increaseProgress) userInfo:nil repeats:YES];

    [timer fire];
}
- (void)increaseProgress
{
    [progressGlobal setProgress:(progressGlobal.progress + 5) animated:YES];
    [[self tableView] reloadData];
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *voCell = [tableView dequeueReusableCellWithIdentifier:TABLE_VIEW_CELL_IDENTIFIER forIndexPath:indexPath];
    UIProgressView *localProgress = (UIProgressView *)[voCell viewWithTag:25];
    [localProgress setProgress:progressGlobal.progress animated:YES];
}