Invalid nib registered for identifier

我的梦境 提交于 2019-12-11 03:07:22

问题


I'm trying to get a view created in a nib file to be used as a section header in my UITableView. I'm following the 3rd option as described here

http://hons82.blogspot.it/2014/05/uitableviewheader-done-right.html

But I'm getting this error

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'invalid nib registered for identifier (sectionHeaderIndentifier) - nib must contain exactly one top level object which must be a UITableViewHeaderFooterView instance'

Here's the code I'm using

 UINib *sectionHeaderNib = [UINib nibWithNibName:@"headerNib" bundle:nil];

    NSString *SectionHeaderViewIdentifier = @"sectionHeaderIndentifier";

    [self.tableView registerNib:sectionHeaderNib forHeaderFooterViewReuseIdentifier:SectionHeaderViewIdentifier];

and

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {

    NSString *SectionHeaderViewIdentifier = @"sectionHeaderIndentifier";

    HeaderSection *sectionHeaderView = [self.tableView dequeueReusableHeaderFooterViewWithIdentifier:SectionHeaderViewIdentifier];


    return sectionHeaderView;
}

And here's a screen shot of my nib file.


回答1:


The message says the root view (not file's owner) must be specifically an instance of UITableViewHeaderFooterView.



来源:https://stackoverflow.com/questions/27965363/invalid-nib-registered-for-identifier

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!