我正在寻找上周以来的鞋面解决方案,但我在互联网上找不到解决方案。所以我想我会在这里得到帮助。
现在可能会有疑问:我有一个MainStoryboard,里面有一个带View的ViewController。在那个视图中我放了一个tableView。 ViewController.h
IBOutlet UITableView *tableView
//on bottom
@property (nonatomic, retain) UITableView *tableView;
ViewController.m我已经合成了它,现在我想在显示视图时重新加载并显示它。
我测试的以下内容没有结果:[tableView reloadData]; [self.tableView reloadData]; [self.tableView setNeedsDisplay];
如果我使用[self.view setNeedsDisplay];
,我会遇到以下错误:
由于未捕获的异常'NSInternatlInconsistencyExeption'而终止应用程序,原因:'无法在捆绑中加载NIB:'NSBundle< ...> (加载)'名称'ViewController'' * 第一个thow调用堆栈:( ...)终止调用抛出异常(lldb)
这是正确的,没有NIB文件,因为我使用了故事板。有没有人有想法?
我发现的唯一的事情是,如果我通过Storyboard中的视图上的按钮重新加载视图,则会重新加载tableView - 完全重新加载 - 但这不是解决方案。
我可以在-(void)prepareForSegue:(UIStoryboard *)segue sender:(id)sender
为此做些什么吗?那个方法我到目前为止仅用于弹出窗口。
答案 0 :(得分:1)
您是否确实在Interface Builder中连接了IBOutlet?
Xcode应该告诉你它是否已经连接:它会在你的头文件的边缘显示一个小圆圈,如果那个圆圈里面有一个圆点就连接了,如果不是那么它就没有了。
要在Interface Builder中连接插座,右键从带有插座的东西(即视图控制器)拖动到要将其连接到(您的桌子)的东西,当你放手时它会给你一个菜单可供选择的商店。