大数据层次结构 - 如何实现?

时间:2009-09-19 13:39:18

标签: ios iphone data-structures hierarchy

我仍在尝试开发一款小药iP​​hone应用程序。 : - ]在过去的几天里,我构建了应该在表格中显示的所有数据。在阅读书籍并观看了很多教程之后,我构建了几个简单的Table View应用程序。这些应用程序始终具有预定义的数据深度。我不确定你是否理解我的意思,所以请打开以下链接来比较我的图形:

You can find the graphics here!

文件 hierarchie1.png 显示我已在我的应用中使用的正常数据层次结构。我的数据与文件 hierarchie2.png 中的结构相似。

不幸的是,我对iPhone开发不是很有经验。我的想法是为树的每个部分创建一个自己的视图控制器。

  • EintragA ViewController管理 1 - 2 - 3
  • Eintrag1 ViewController管理 1.1
  • Eintrag11 ViewController管理 1.1.1 - 1.1.2 等等......

我希望你能明白我的意思。

我想知道的是,我的想法是否是实现这类数据的正确方法?或者还有另一种更好的方法吗?

2 个答案:

答案 0 :(得分:1)

查看UINavigationController以及Xcode提供的示例“Navigation-based application”作为模板项目。

基本上,应用程序中的每个子节点 type (“ Eintrag ”类型)都是UIViewController子类。

对视图控制器的引用放在UINavigationController堆栈上。您可以推送和弹出引用以在视图层次结构中导航。

在每个视图控制器中,要打开另一个子节点,可以在导航控制器上调用-pushViewController:animated方法,例如:

[self.navigationController pushViewController:eintragType1Instance animated:YES]; 

您通常会在应用程序窗口的左上角有一个“后退按钮”。这会触发“pop”,在程序上等同于:

[self.navigationController popViewControllerAnimated:YES];

答案 1 :(得分:0)

如果对于每种树,任何级别的节点都是相同的类型,那么您的想法是有意义的 - 因此EintragA中的表格单元,第1节是EintragA中使用的相同类型的单元格,第2节。

当您进入更深层次时,您可以创建相同类型的视图控制器的新实例,并告诉它们要显示的数据级别。