我有一個視圖控制器,其中嵌入了一個tableView。我有以下代碼。NSMutableArray屬性不工作在dequeueReusableCellWithIdentifier
@property (nonatomic, strong) NSMutableArray* eventArray;
- (void)viewDidLoad {
[super viewDidLoad];
self.eventTableView.delegate = self;
self.eventTableView.dataSource = self;
if (!self.eventArray){
self.eventArray = [[NSMutableArray alloc] init];
}
...
for(NSDictionary* dict in responseObject){
[self.eventArray addObject:[[Event alloc] initWithEventName:[dict valueForKey:@"Name"]eventDescription:[dict valueForKey:@"Description"]]];
}
[self.eventTableView reloadData];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
for(Event* event in self.eventArray)
{
NSLog(@"Event Name in numberofRows: [%@]", [event eventName]);
}
return [self.eventArray count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *MyIdentifier = @"EventCell";
EventTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];
Event* eventForCell = (Event*)[self.eventArray objectAtIndex:[indexPath row]];
NSLog(@"eventArraySize [%lu]", [self.eventArray count]);
for(Event* event in self.eventArray)
{
NSLog(@"Event Name: [%@]", [event eventName]);
}
[cell.eventNameLabel setText: [eventForCell eventName]];
return cell;
}
由於代碼運行通過我看到的對象添加到eventArray成功,日誌循環,我在numberOfRowsInSection打印打印在的cellForRowAtIndexPath以下
Event Name in numberofRows: [Worship Rehearsal]
Event Name in numberofRows: [Worship Rehearsal]
Event Name in numberofRows: [Worship Rehearsal]
同一迴路打印出以下內容
eventArraySize [3]
Event Name: [(null)]
Event Name: [(null)]
Event Name: [(null)]
我試過用其他屬性,我可以正確訪問它們。謝謝你的幫助。
一切都很好,您的活動名稱爲零 – Andy 2014-12-02 02:25:59
您可以發佈視圖控制器代碼的其餘部分嗎? – 2014-12-02 03:00:05