iPhone核心数据:请求成员'tableView'不是结构或联合

时间:2010-05-10 01:55:14

标签: iphone uitableview core-data

我正在尝试使用CoreData来填充UITableView。我一直在使用开发人员“Locations”项目,我认为我的一切都是正确的。但是,现在我在构建时遇到以下错误:

request for member 'tableView' in something not a structure or union

为什么会对tableView感到困惑?我在方法中多次使用它。错误似乎来自:

[self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:YES];

想法?

3 个答案:

答案 0 :(得分:1)

当您在不太清晰的情况下使用点语法时,该错误往往会出现。

首先,我会尝试将其更改为[self tableView]并查看问题是否消失。

至于为什么它只在这种方法中出现,需要显示更多的代码来缩小具体问题的范围。

答案 1 :(得分:0)

什么是self,为什么你需要在那里使用它?

如果您在一个名为tableView的成员的班级中,可能只有在您需要使用self访问它时,才能创建它以使@property (retain)生效。当然,对成员的访问也明确清楚也不是一个坏主意。

(编辑eman - 不用担心!)

答案 2 :(得分:0)

您确定要正确地继承UITableViewController吗?如,

@interface MyTableViewController : UITableViewController {}

编辑:正如Rob Lourens所说,你的问题是你是UIViewController而不是UITableViewController的子类。 UIViewController具有通用view属性,但没有表格视图 - 在不需要管理表格视图的情况下使用它,并在任何情况下使用UITableViewController做。