iPhone上有树形控件吗?

7

iPhone上是否有可用的树形控件?

我需要用树形结构表示带有子节点的树,该如何实现?

谢谢


如果你指的是内置数据结构,我认为答案是否定的。 - vodkhang
5个回答

7

默认情况下没有树形小部件。这基本上是因为您不应该真正需要它,大多数情况下应该避免使用。

表格导航控制器通常是在层次结构/树中向下导航节点的最常见方法。

在触摸世界中很难适应我们在桌面上拥有的类似树形控件,因为您的手指太大(因此节点也很大),并且由于节点偏移以显示深度,因此剩余的空间很少。将其添加到iOS环境中会创建奇怪的UX流程,因此如果认为需要,则可能需要重新考虑设计流程。

如果需要模拟它,则可以使用表视图,并使用一些填充来偏移每个子项的左侧以显示深度。


4
http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/TableView_iPhone/TableViewStyles/TableViewCharacteristics.html%23//apple_ref/doc/uid/TP40007451-CH3-SW1 - Joshua Nozzi
我正在寻找一个控件,一个第三方控件。不是视图或导航。 - Meir

1

0

我会使用UITableView来展开和折叠树形结构中的子项。您可以根据UITableViewCell在树形结构中的位置,在其显示时设置缩进级别。您需要跟踪树形结构中哪些项目已展开/可见,以便始终向树形结构提供正确的数据。

我刚为一个项目做了这个。不幸的是,我不能分享完整的代码。但编写起来应该不是太难。

如果您找到了现成的解决方案,请告诉我们。


0
从我所看到的情况来看,解决我的问题最好的方法是使用面包屑控件。我正在寻找一个现成的面包屑解决方案,但如果没有,编写一个也不是什么大问题。

-2

好的,我做到了。

我添加了一个WebView,并向其中添加了面包屑列表。设计类似于苹果官网。

当用户点击链接时,我调用popToViewController函数并跳转到相应页面。

这可以防止用户反复点击返回按钮。

希望这能帮助到某些人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接