带有 cocos2d 的 UITableView

Posted

技术标签:

【中文标题】带有 cocos2d 的 UITableView【英文标题】:UITableView with cocos2d 【发布时间】:2009-02-05 13:28:51 【问题描述】:

我是 Objective-C 领域的学习者。我正在尝试用 cocos2d 构建一个 iPhone 应用程序。现在我想使用 UITableView 来显示 XML 文件中的数据。

是否可以在 cocos2d 中使用 UITableView,是否也可以从 XML 文件中检索数据?

【问题讨论】:

【参考方案1】:

你可以很容易地将UIViews 与cocos2d 场景集成使用CCUIViewWrapper 类,该类由某人制作并发布在cocos2d forum。我已经使用过它,使用论坛上的所有内容非常简单。

对于 XML 解析,最好使用 ios 提供的解析器,因为 Jonathan 说 cocos2d 是一个游戏引擎,它不提供任何解析 XML 文件的机制。

【讨论】:

【参考方案2】:

绝对! XML 文件甚至不必在您的应用中是本地的。

我建议使用 TouchXML 之类的东西来解析 XML。唯一内置的 iPhone XML 解析库是一个基于事件的解析库,除非您的数据具有正确的结构,否则很难使用。

然后在用数据填充表格的表格视图方法中,从您从数据文件中解析出来的变量中选择项目。

【讨论】:

其实libxml2是iOS自带的,而且非常灵活……(DOM、SAX、html、XHTML,随便你说,libxml2都能解析)。【参考方案3】:

是的,Squeegy 是对的。不过,我确实想纠正您似乎存在的概念性误解。您编写的任何 iPhone 应用程序都将始终基于核心 iPhone API。因此,您使用 Cocos2d 与您使用 UITableView 无关。至于XML解析,当然不是Cocos2d做的。 Cocos2d 是 OpenGL 的高级抽象,用于相对容易的游戏开发; XML 解析不在其权限范围内。因此,再次强调,您对 Cocos2d 的使用与您对 XML 解析库的使用无关。

【讨论】:

【参考方案4】:

您可以在 Cocos2D 应用程序旁边使用 UITableView 对象、UINavigationViewControllers 等。

只需在applicationDidFinishLaunching 中创建一个 UIViewController 并将其视图添加到窗口。

抓住 EAGLView* Cocos2D 使用,并在此 OpenGL 视图和您的视图控制器之间切换(使用它的表格视图、按钮以及您拥有的东西)。

如果您想在 Cocos2d 内容中同时显示表格,最好使用它们提供的 UI 元素。

【讨论】:

【参考方案5】:

还有使用 cocos2d 扩展的可能性。这些几乎是一些用 cocos2d 重写的 UIKit 类。

这是我发现的带有滚动和表格视图的link。 使用方法没有太多解释,但和UIScrollViewUITableView差别不大。

【讨论】:

以上是关于带有 cocos2d 的 UITableView的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Cocos2d v3 中获取一个类型的孩子

cocos2d如何预加载资源?

COCOS2D:CCScene 中的 ScrollView 块动画

Cocos2d FPS 下降 ||仅在分析模式下工作

修改 Cocos2D 滑动菜单网格添加额外的 BUY ME 按钮

如何使用cocos2d