ogni volta che ho impostato la mia tableHeaderView non sto vedendo nel simulatore. Se aggiungo come una visualizzazione secondaria, esso finisce per essere disegnato sotto l'intestazione di sezione. Qualche idea di cosa mi manchi qui?tableView.tableHeaderView stato impostato ma non disegnato
io ho un file XIB. Tuttavia non ho visto nessuna proprietà in IB per influenzare headerViews.
- (void)viewDidLoad {
[super viewDidLoad];
MyTitleView *titleView = [[MyTitleView alloc] initWithFrame:CGRectMake(60,0,260,40)];
titleView.label.text = @"My Title";
self.navigationItem.titleView = titleView;
[titleView release];
StandardTableHeaderView *headerView = [[StandardTableHeaderView alloc] initWithFrame:CGRectMake(0,0,320,44)];
self.tableView.tableHeaderView = headerView;
// [self.view addSubview:self.tableView.tableHeaderView];
// [headerView release];
NSLog(@"Header: %@",self.tableView.tableHeaderView); //Logs ] Header: <StandardTableHeaderView: 0x5a508b0; frame = (0 0; 320 44); layer = <CALayer: 0x5a51130>>
Edit: metodo init StandardTableHeaderView.m:
- (id)initWithFrame:(CGRect)frame {
if ((self = [super initWithFrame:frame])) {
self.backgroundColor = [UIColor redColor];
self.label = [[UILabel alloc] initWithFrame:CGRectMake(frame.origin.x,0,frame.size.width,frame.size.height)];
self.label.backgroundColor = [UIColor clearColor];
self.label.textColor = [UIColor whiteColor];
self.label.font = [UIFont fontWithName:@"Helvetica" size:16];
[self addSubview:self.label];
}
return self;
}
mio tableView è impostato - le cellule funzionano bene e il registro mostra il bel telaio tableHeaderView.Non sto cambiando tableHeaderView in nessun'altra parte ... forse qualche stranezza e dovrei copiare in un nuovo progetto? – quantumpotato
Per ora proverò a ridimensionare la vista tabella e ad aggiungere Vista intestazione come vista separata. – quantumpotato
Come hai controllato che la proprietà tableView sia impostata (non nulla)? Il fatto che le celle siano disegnate non significa necessariamente che la proprietà tableView non sia nulla ... prova ad aggiungere 'NSLog (@" self.tableView =% @, self.tableView.tableHeaderView =% @ ", self.tableView , self.tableView.tableHeaderView); 'subito dopo' selfView.tableHeaderView = headerView; 'all'interno di' viewDidLoad' e vedi cosa ottieni nel log ... –