如何与第

问题描述:

的多电平正确地显示内部的UITableView嵌套数组数据I具有以下JSON数据如何与第

{ 
    "Display_Selected List": 
     [ 
     { 
      "product_name": "Product1", 
      "items": 
      [ 
      { 
       "item_name": "SubItem1", 
       "specifications": 
       [ 
       { 
        "list": [ 
        { 
         "name": "Sp1" 
        }, 
        { 
         "name": "Sp2" 
        } 
        ], 
        "specification_name": "Specification Group 1" 
       }, 
       { 
        "list": [ 
        { 
         "name": "Sp3" 
        }, 
        { 
         "name": "Sp4" 
        } 
        ], 
        "specification_name": "Specification Group 2" 

       } 
       ] 
      }, 
      { 
       "item_name": "Sub Item2", 
       "specifications": 
       [ 
       { 
        "list": [ 
        { 
         "name": "Sp2" 
        } 
        ], 
        "specification_name": "Specification Group 1" 
       }, 
       { 
        "list": [ 
        { 
         "name": "Sp3" 
        } 
        ], 
        "specification_name": "Specification Group 2" 

       } 
       ] 
      } 
      ] 
     }, 
     { 
     "product_name": "Product2", 
      "items": 
      [ 
      { 
       "item_name": "Item1", 
       "specifications": 
       [ 
       { 
        "list": [ 
        { 
         "name": "Sp3" 
        }, 
        { 
         "name": "Sp4" 
        } 
        ], 
        "specification_name": "Specification Group 2" 

       } 
       ] 
      } 
      ] 
      } 
      ] 
} 

按照设计要求我必须diplay在单个uitable视图这整个数据等按照 我已经创建粗略设计如在下面所示的图像

enter image description here

我能实现这个经由uitableview内部uitableviewcell但 每苹果推荐苹果不推荐意见表是 添加其他滚动对象的子视图

现在我的问题是如何实现由单一的UITableView和也按我的JSON所有下面的设计内容是动态的

有没有人见过这样的事情?任何参考将有所帮助。

+0

如果项目名称每次都显示,那么您可以使用headerview,然后您也可以将其添加到标题中..对于使用本教程的项目和规范组sapandiwakar.in/nested-sections-in-uitableview –

+0

没有我的产品由于有多个产品阵列显示产品>项目>规格>列表 –

+0

是每次都显示产品和项目吗? –

如果您不希望在tableViewCell内使用tableView,则可以按照以下方法进行操作。

  • 创建3个不同的细胞首先一个用于显示项目名称,第二个用于表示规范组名,第三个用于示出说明书中项目(例如:SP1,SP2,...)
  • numberOfRowsInSection将有使用上面创建的单元显示数据的正确计数。因此,numberOfRows应返回总计数rowsInSection = 项目数+每个项目中的规格数+每个项目的每个规格中的列表数
  • 相应地更改您的数据源并进行条件检查,以便显示项目先指定单元格,然后指定规格组名称的单元格,然后在每个规范内显示指定项目,然后显示下一个项目名称等等。

我希望这种方法能帮助您达到结果。

如果您可以在tableViewCell内使用tableView,那么很容易,在许多应用程序中,我已经使用了这种方法,并且我没有遇到任何Apple审查问题。如果您在tableViewCell内使用tableView,最好禁用滚动和反弹属性。

+0

Apple建议不要将表视图添加为其他可滚动对象的子视图,这就是为什么我不使用tableview单元格的原因,因为您的答案是tableviewcell内部更好的tableview或创建3个不同的单元格(以速度的方式) –

+0

速度我想用3个不同的细胞会更好。但管理数据源可能是一个挑战 –

+0

谢谢,我希望你能用这种方法达到预期的效果。祝你好运 :) –