barView I have a Table View and, in each cell, I want to draw some statistic bars. I have an empty UIView created in my custom cell, its name is mainView and it is the view where the chart is drawn.
In cellForRowAtIndexPath I’m doing this:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"CustomCellIdentifier";
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
CGRect barRect = CGRectMake(0, 0, 100, 10);
UIView *barView = [[UIView alloc] initWithFrame:barRect];
[barView setBackgroundColor:[UIColor redColor]];
[cell.mainView addSubview:barView];
return cell;
}
The barView is not displaying on loading. It only shows after I change and return from another tab or after the cell goes out of the screen.
Notes:
- I have tried
[cell.mainView setNeedsDisplay]; - I have a header made with another custom cell.
I have solved it easily with:
It seems that adding a subview cant be done before the view is created in the window, before the cells are completely loaded.