选择没有关联JSON响应的单元格时该怎么做



我从web服务API得到一个响应,如下所示:

{
    "springs": [{
        "name": "springName",
        "leafs": [{
            "name": "leafName",
            "towns": [{
                "name": "townName",
            },{
            "name": "leafName2",
            },{

我在LeafViewController表视图中列出了所有的Leafs,如果Leaf有一个与之关联的Towns列表,那么它跳转到TownViewController表视图以列出相关的Towns

我的cellForRowAtIndexPath:

都是正确的
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"standardCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    Spring *spring = [springs objectAtIndex:indexPath.section];
    Leaf *leaf = [sport.leafs objectAtIndex:indexPath.row];
    cell.textLabel.text = leaf.shortName;
    return cell;
}

我的问题是,有时没有TownLeaf 相关联,在这种情况下,我需要检查,所以如果Leaf单元格被按下,那么我可以弹出回主视图控制器,而不是去下一个视图控制器,列出Town s。

现在,如果我选择一个Leaf单元格,没有与之关联的Town单元格,那么它会跳转到空白的TownViewController单元格,因为没有关联的城镇。

我如何检查JSON响应,以便我知道是否要segue到下一个TownViewController或弹出回MainViewController ?

我可以张贴任何额外的代码必要的,感谢帮助!

像这样应该可以工作

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    Spring *spring = [springs objectAtIndex:indexPath.section];
    Leaf *leaf = [sport.leafs objectAtIndex:indexPath.row];
    if(leaf.town)
         //Do whatever
    else
         //Do something different
}

最新更新