如何将元素从 json 显示到表格视图? [关闭]

Posted

技术标签:

【中文标题】如何将元素从 json 显示到表格视图? [关闭]【英文标题】:how to display elements from json to table view? [closed] 【发布时间】:2013-09-11 06:31:07 【问题描述】:

我是 iphone 开发新手,我有一个 json 响应,例如:-`

(
    
    0 = 1;
    1 = Pradeep;
    2 = "<null>";
    3 = "<null>";
    "friendship_flag" = "<null>";
    id = 1;
    name = Pradeep;
    sender = "<null>";
,
    
    0 = 2;
    1 = Pradeep;
    2 = "<null>";
    3 = "<null>";
    "friendship_flag" = "<null>";
    id = 2;
    name = Pradeep;
    sender = "<null>";
,

我想在表格视图中显示所有名称。 我的代码如下:-

NSDictionary *allDataDictionary=[NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];
NSLog(@"Data from Web %@",allDataDictionary);


NSArray *feedforentry=[allDataDictionary objectForKey:@"1"];

[array addObject:name]; //array will be display on table view .

提前致谢。

【问题讨论】:

我认为这个问题是在前一天提出的,请检查该答案并尝试该代码不要再次发布相同的 qn.. 不,问题没有解决。所以我还在找。 How to parse api response on table view? 的可能重复项 @RinkalRajoria 你有输出吗? 不,我不知道 :( 【参考方案1】:

我认为您直接从响应中获取了数组,因此直接将响应分配给数组并在 tableview 中显示名称,如下所示。

NSArray *dataArray = [NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];

在 cellForRowAtIndexPath 方法中你必须写

NSDictionary *dictionary = [dataArray objectAtIndex:indexPath.row];cell.textLabel.text=[dictionary objectForKey:@"name"];

【讨论】:

【参考方案2】:

此代码用于在 Tableview 中显示您的数组数据...

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

    // Return the number of sections.
    return 1;


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section




   return [array count];



- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath



    static NSString *CellIdentifier = @"Cell";
    cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil)
    
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];

        //cell.selectionStyle=UITableViewCellEditingStyleNone;

    

    NSDictionary *dictionary = [array objectAtIndex:indexPath.row];
    cell.textLabel.text=[dictionary objectForKey:@"name"];

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

【讨论】:

【参考方案3】:
NSArray *getArray=[NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];

    for (NSDictionary *dataDict in getArray)
        [array addObject:[dataDict objectForKey:@"name"]];
    

    [yourTableView reloadData];

我认为这对你会有帮助。

【讨论】:

感谢它现在工作我有一个 url NSURL *url=[NSURL URLWithString:@"http:/p?q=helo_users&u_id=5&page=1"];在页面 = 1 ;我想通过参数代替 1 。谢谢【参考方案4】:

获取数组中的所有名称,然后在你的 tableView 数据源方法 cellForRowAtindex 中这样做

cell.label.Text = [yourArray objectAtIndex:indexPath.row];
return Cell;

【讨论】:

以上是关于如何将元素从 json 显示到表格视图? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

将 JSON 字符串从一个视图传递到另一个视图

关闭表格视图控制器上方的模态显示视图控制器时,如何从表格视图控制器中取消选择行?

在表格视图中显示带有 JSON 结果的数据 [关闭]

Swift 5:给定的数据不是有效的JSON(将数据从API加载到表格视图)

如何将数据从表格视图单元格传回表格视图类?

如何解析 JSON 对象并在表格中显示? [关闭]