1

我是 Objective C 编程的新手

这是我的困境:我正在从网络中提取一个 JSON 文件,并且能够将其中一个元素 (currDate) 显示到我的 tableView 中,但现在我想显示更多。从下面的代码中,我可以让它同时显示 currDate 和 prevDate

这里需要改变逻辑:

for (NSDictionary *diction in arrayOfEntry) {
    NSString *currDate = [diction objectForKey:@"Current Date"];
    a = currDate;
    NSString *prevDate = [diction objectForKey:@"Previous Date"];
    b = prevDate;     

    [array addObject:a]; 

    }
    [[self myTableView]reloadData];

我不确定是否需要在此处更改任何内容,但我将其附加以显示我如何将数组显示到我的 viewTable:

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [array count];
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if(!cell)
{
    cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault     reuseIdentifier:CellIdentifier];
}

cell.textLabel.text = [array objectAtIndex:indexPath.row];
//cell.textLabel.text = [array objectsAtIndexes:indexPath.row];
return cell;
}
4

3 回答 3

0

使arrayOfEntry全球。在 .h 文件中

NSArray *arrayOfEntry;

numberOfRowsInSection

[arrayOfEntry count]

tableView: cellForRowAtIndexPath

NSString *currDate = [[arrayOfEntry objectAtIndex:indexPath.row] objectForKey:@"Current Date"]
NSString *prevDate = [[arrayOfEntry objectAtIndex:indexPath.row] objectForKey:@"Previous Date"]
cell.textLabel.text = [NSString stringWithFormat:@"%@   %@", currDate, prevDate];
于 2012-11-17T20:57:45.837 回答
0

只需添加另一行:

[array addObject:a];
[array addObject:b];
于 2012-11-17T21:00:48.153 回答
0

要将多个元素添加到目标 c 中的数组,您需要使用:

 NSMutableArray *newArr = [NSMutableArray new];

然后:

[newArr addObject:dict1];

如果需要,您可以在添加对象完成后将NSArray您使用的设置为 。NSMutuableArray

于 2020-03-20T20:13:49.933 回答