-2

我有一个 Iphone 应用程序,我正在尝试将两个数组加载到同一个表中。为此,我组合了两个数组并制作了另一个数组。然后从该数组加载它。工作正常。我需要解决的问题这两个数组项的不同单元格图像。并且详细文本标签对于`是不同的

        NSMutableArray *dataArray=[[NSMutableArray alloc] init];
        NSMutableArray *dataArray1=[[NSMutableArray alloc] init];
        NSDictionary *news=[dict objectForKey:@"news"];
        NSDictionary *deals=[dict objectForKey:@"deals"];
        NSLog(@"%@",[news classForCoder]);
        NSLog(@"%@",news);


        for(NSDictionary *key in news)
        { 
            if([key isKindOfClass:[NSDictionary class]])
            {
                [dataArray addObject:key];      
            }
        }

        for(NSDictionary *key in deals)
        {
            if([key isKindOfClass:[NSDictionary class]])
            {
                [dataArray1 addObject:key];        
            }
        }
self.newsarray = [[dataArray arrayByAddingObjectsFromArray:dataArray1] mutableCopy];
        //self.newssarray=dataArray;
        [self.mTableView reloadData];

` 我需要从两个数组中更改数组元素的单元格图像。如果元素来自第一个元素,那么单元格图像是另一个?有人可以告诉我实现这一点的代码片段吗?

4

2 回答 2

3

我会创建一个属性并将其值设置为[dataArray count].

只需cellForRowAtIndexPath执行以下操作:

if(indexPath.row < dataArraySize)
{
  // current row belongs to an element from the first array
}
else
{
  // second array
}

dataArraySize如果大小发生变化,您必须在更新数据源时进行重置。

或者,如果您只想显示数据,您甚至不需要创建新的组合数组。

if(indexPath.row < [dataArray count])
{
  // populate row from first array
}
else
{
  // second array
}
于 2012-07-09T19:06:52.077 回答
-2

一旦将它们组合在一起,就无法分辨它们来自哪个数组。我相信您需要保留一个设置为 [dataArray1 count] 的变量;然后在做你的单元格时,减少计数器,一旦它的 0 开始使用另一个单元格图像

于 2012-07-09T19:00:43.077 回答