I have a table with custom header views that no matter when, or what value I choose for section, I always get nil value. I have another table with the same problem.
I can see the header views if I print the value of [tableview subviews], but I don't know why the method won't return anything.
What I am trying to do is to get an activityIndicator that is in the headerview and start it or stop it with a method call.
The headers are always painted ok, but I can't get a reference back to it. Also, calling headerViewForSection:
doesn't call the delegate method, is that normal?
footerViewForSection:
has the same problem
Some code:
- (UIView*) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
NSArray* objs = [[NSBundle mainBundle] loadNibNamed:@"iPadTableCells" owner:nil options:nil];
UIView* header = [objs objectAtIndex: 0];
UIActivityIndicatorView* activityIndicator = (UIActivityIndicatorView*) [header viewWithTag:5];
[activityIndicator startAnimating]
return header;
}
from any method:
UIView* headerView = [tableview headerViewForSection: section]; //returns nil
if (headerView) {
UIActivityIndicatorView* activityIndicator = (UIActivityIndicatorView*)[headerView viewWithTag: 5];
[activityIndicator stopAnimating];
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…