我将UICollectionView嵌入到另一个UICollectionView(作为一种表格)中。第一个集合视图工作正常 - 我得到正确数量的单元格及其中的正确信息。第二个然而我只得到显示的前两组数据。以下是外部集合视图的cellForItemAtIndexPath的代码:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Main Tide Data Table Cell";
TideDataTableCell* tideDayDataCell = [self.tideDataTable dequeueReusableCellWithReuseIdentifier:CellIdentifier forIndexPath:indexPath];
tidalDate* tideDate = self.tidalDates[indexPath.row];
tideDayDataCell.tides = nil;
tideDayDataCell.tides = [[NSMutableArray alloc] initWithCapacity:0];
tideDayDataCell.tideDataTable.delegate = tideDayDataCell;
tideDayDataCell.tideDataTable.dataSource = tideDayDataCell;
self.tideDataTable.backgroundColor = [UIColor lightGrayColor];
tideDayDataCell.tides = tideDate.tides;
tideDayDataCell.backgroundColor = [UIColor whiteColor];
tideDayDataCell.dayLabel.text = tideDate.dateString;
tideDayDataCell.averageTideHeight = self.avgTideHeight;
return tideDayDataCell;
}
这里是内部集合视图的cellForItemAtIndexPath无法正常工作 - 重复前两组数据......
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
NSString* CellIdentifier = @"Tide Info Table Cell";
TidalTideTableCell* tidalTideTableCell = [self.tideDataTable dequeueReusableCellWithReuseIdentifier:CellIdentifier forIndexPath:indexPath];
tidalTideTableCell.timeTideLabel.text = @"";
tidalTideTableCell.heightTideLabel.text = @"";
tidalTideTableCell.hwlwTideLabel.text = @"";
self.tideDataTable.backgroundColor = [UIColor clearColor];
Tide* tide = self.tides[indexPath.row];
tidalTideTableCell.heightTideLabel.text = [[NSNumber numberWithDouble:tide.height] stringValue];
if (tide.height > self.averageTideHeight)
{
tidalTideTableCell.hwlwTideLabel.text = @"HW";
}
else
{
tidalTideTableCell.hwlwTideLabel.text = @"LW";
}
tidalTideTableCell.timeTideLabel.text = tide.date;
tidalTideTableCell.backgroundColor = [UIColor clearColor];
return tidalTideTableCell;
}
正如您所希望看到的那样 - 每次调用时都会保存包含信息(tides)的数组,并且我已经检查过所输入的数据是否正确。 我将不胜感激任何帮助...
答案 0 :(得分:0)
问题是因为您发送错误数量的部分/行。我希望你在此期间解决了你的问题。