在UITableViewController的方法中访问时,NSArray为空

时间:2012-03-29 16:41:17

标签: objective-c ios cocoa-touch nsarray uitableview

我正在尝试UITableView,但我完全陷入困境。我的问题是我正在尝试使用方法-tableView:cellForRowAtIndexPath:并填充单元格我有NSArray myObject,这是由另一个类通过我{{1}中的setter设置的}}。

我的问题是,当我要使用那个数组时,它是完全空的,我不知道为什么 - 当我做setter时,对象有数据,但当我尝试在内部进行getter时上面的方法,它是空的。有人可以告诉我为什么,我该如何解决?

我的二传手:

UITableViewController

MyObjectList在.h:

中声明
- (void)setmyObjectList:(NSArray *)list{          
      _myObjectList = list;
}

这段代码在Controller中,通过segue调用我的TableViewController:

@property (nonatomic, strong) NSArray *myObjectList;

也许我没有解释清楚:我有一个类,它有一个NSArray,我想要在TableView中显示的对象。所以通过segue我在TableViewController中设置了这个NSArray。在我执行NSLog的setter中,所有数据都在NSTableViewController的属性中的NSArray中,但是当我尝试在方法tableView中访问时:cellForRowAtIndexPath:信息为空。为什么?我不知道。

谢谢:P

1 个答案:

答案 0 :(得分:0)

首先,不要覆盖setter方法,因为你没有做任何特殊的事情。其次,在哪里创建数组,稍后通过调用将属性设置为  [myTVC setPharmaciesList:self.list];

即。你在哪里填充self.list?