0

我正在 Xcode 中开发一个应用程序,我目前正在尝试访问一个单独的类并在那里调用一个函数。


发送消息的代码

-(IBAction) reloadButton:(id)sender
{
    RootViewController *theInstance = [[RootViewController alloc] initWithNibName:@"MainWindow" bundle:nil];
    [theInstance reloadTableView];
}

调用方法

.h 文件

-(void) reloadTableView;

.m 文件

-(void)reloadTableView
{
    [self.tableView reloadData];
}

每当我构建时,都没有错误。但是当我运行应用程序并按下“reloadButton”时,它会崩溃并在以下行显示“程序收到信号:SIGABRT”:

[self.tableView reloadData];

可能是什么问题,我将如何解决这个问题?

4

3 回答 3

1

我猜 RootViewController 没有正确初始化它的 tableView。在调试器中,尝试访问 self.tableView 中的值。

于 2012-12-25T20:08:26.110 回答
0

您的班级实际上是否用作数据源?否则,请致电:

self.tableView.dataSource = self;
于 2012-12-25T20:16:54.993 回答
0

RootViewController 对象看起来并没有被使用。

您正在分配 - 在方法中初始化它,但没有对它做任何事情 - 没有在任何地方添加它的视图,也没有设置数据源或委托。

在方法结束时,它超出了范围。

于 2012-12-25T21:06:20.067 回答