Ios6 TableView表示来自搜索的详细信息

Ios6 TableView表示来自搜索的详细信息,ios6,uitableview,xcode5,Ios6,Uitableview,Xcode5,我对Xcode iOS开发非常陌生 我使用“自动完成”实现搜索(异步向服务器发送每个用户插入的信件的请求,通过此连接,我从服务器获取请求的数据)。 这部分很好:) 我的问题是在表视图中表示搜索结果,我在谷歌上搜索了很多 但我找不到任何对我有帮助的好例子。 当tableView第一次绘制时,一切正常,但当我获取另一个请求时: (按下第二个键后,请求返回新数据,我希望在表中绘制它,而不包含以前的数据) 我的应用程序崩溃,出现异常“发送到实例0x的选择器不正确…” 我正在NSArray*Fetched

我对Xcode iOS开发非常陌生

我使用“自动完成”实现搜索(异步向服务器发送每个用户插入的信件的请求,通过此连接,我从服务器获取请求的数据)。 这部分很好:)

我的问题是在表视图中表示搜索结果,我在谷歌上搜索了很多 但我找不到任何对我有帮助的好例子。 当tableView第一次绘制时,一切正常,但当我获取另一个请求时: (按下第二个键后,请求返回新数据,我希望在表中绘制它,而不包含以前的数据)

我的应用程序崩溃,出现异常“发送到实例0x的选择器不正确…”

我正在NSArray*FetchedData中存储提取的数据; 后来我改变了:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:    (NSInteger)section
{
     return [FetchedData count];
}
在另一个函数中(我想我必须在这里改变一些东西,但我不知道是什么)

获取FetchedData后,调用函数: [self.tableView重载数据]

但是在上面的函数中,我在尝试表示下一个获取的数据后崩溃了 与前一个不同(它甚至可以是空的)

我想我可能需要删除之前的所有单元格, 但我不知道怎么做。(我试过谷歌和这个网站的一些代码,但我缺乏基本知识,我一直得到所有可能的例外情况)

请有人给我一个像样的例子和基本的解释,我会非常感激


谢谢。

您需要在某个地方注册tableViewCell类(viewDidLoad)

然后在

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:    (NSIndexPath   *)indexPath
{
CustomTableViewCellClass *cell = [self.tableView dequeueReusableCellWithIdentifier:@"CellReuseIdentifier"];

cell.cellName.text = (NSString*)[FetchedData objectAtIndex:indexPath.row];
return cell;
}
获取数据后,请致电

[self.tableView reloadData];

有关“发送到实例0x的选择器不正确…”的详细信息,选择器是什么,它发送到哪个对象?NIB是什么?我没有使用interface builder,为什么要注册自定义tableView?。我在tableViewController中,这还不够好吗?我还做了重新加载数据功能。即使您没有使用interface builder,也需要使用重用标识符注册该类,table view使用该标识符返回屏幕上不可见的单元格以提高性能。对于重新加载数据,将重新加载的数据发送到表视图就像魅力一样。哦,那么“reuseindetifier”应该起作用吗?你能给我举个例子吗?如果没有interface builder,我如何注册?非常感谢,我将尝试一下:)
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:    (NSIndexPath   *)indexPath
{
CustomTableViewCellClass *cell = [self.tableView dequeueReusableCellWithIdentifier:@"CellReuseIdentifier"];

cell.cellName.text = (NSString*)[FetchedData objectAtIndex:indexPath.row];
return cell;
}
[self.tableView reloadData];