seu*_*ner 12 objective-c uitableview ios
尝试使用已注册重用的nib时,我遇到了间歇性错误.我在两个ViewControllers上使用相同的自定义单元格.
2013-09-05 11:04:08.476 xxx [51395:c07]***由于未捕获的异常'NSInternalInconsistencyException'终止应用程序,原因:'无效的nib注册标识符(TweetTableViewCellId) - nib必须包含一个顶级对象必须是UITableViewCell实例'
// First Controller to use custom Cell
@implementation TweetsViewController
- (void) viewDidLoad
{
...
  UINib *nib =  [UINib nibWithNibName:kTweetTableViewCellNibName bundle:nil];
  [self.tweetsTableView registerNib:nib forCellReuseIdentifier:@"TweetTableViewCellId"];
..
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
  TweetTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kTweetTableViewCellId forIndexPath:indexPath];
...
}
@end
// second Controller to use custom Cell
@implementation OfflineEpisodeModalViewController
- (void) viewDidLoad
{
  UINib *nib =  [UINib nibWithNibName:kTweetTableViewCellNibName bundle:nil];
  [self.tweetSearchTableView registerNib:nib forCellReuseIdentifier:kTweetTableViewCellId];
}
...
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
  TweetTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"TweetTableViewCellId" forIndexPath:indexPath];
}
@end
有什么建议吗?
解决
很简单,但无论如何,作为一种新知识是有效的:如果你声明一个具有相同名称的xib文件(我的错误),将无法保证将加载的文件.
我删除了"被遗忘的"xib文件并且有效!