导入对象.h文件后,TableViewController无法识别对象

时间:2013-12-03 21:35:28

标签: ios objective-c uitableview nsarray

我创建了一个对象(对象名称为Coach),我在其.h文件@property (strong,nonatomic) NSArray *interestingCoaches;@property (strong, nonatomic) Coach *coach;中为该对象声明了一个数组属性,然后在视图控制器中(我们称之为xViewController)我导入了Coach.h文件(#import "Coach.h")并设置了数组self.coach.interestingCoaches。但是在我的表视图控制器中,我导入了我的Coach.h文件,当我尝试将- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView方法设置为

return self.coach.interestingCoaches.count;

它说没有找到“物业教练”并迫使我重建教练财产

@property (strong, nonatomic) Coach *coach; 在表格中再次查看控制器的标题。为什么它识别我的XViewController中的coach对象而不是我的表视图控制器?以及如何让我的表视图控制器使用我的xViewController中声明的数组识别对象?

谢谢(没有故事板)

1 个答案:

答案 0 :(得分:0)

我如何理解设置: 你有一个带有属性的Coach类:NSArray intrestingCoaches。 你有一个带有属性的XViewController类:Coach coach。 你有一个UITableViewController类。

如果在XViewController类中设置coach的数组,并且想要在UITableViewController类中访问同一个数组,则需要 引用 教练。

我无法看到你的课程是如何设置的,所以我无法给出完整的答案。这就是我想你想要的:

你有你的XViewController,你想要显示UITableViewController。 我认为最好的选择是在UITableViewController中保留一个coach引用。 所以你必须制作一个自定义的UITableViewController:

@interface CustomTableViewController : UITableViewController

@property (nonatomic, strong) Coach *coach;

@end

初始化CustomTableViewController时:

CustomTableViewController *tableViewController = [CustomTableViewController alloc]init];
tableViewController.coach = self.coach       //self = XViewController
//Show view

现在您可以参考同一位教练! 不要忘记设置代理和数据源。

如果我对你的设置的理解是错误的,请纠正我,所以我可以编辑我的答案!