解压缩并将内容推送到表格视图中
Posted
技术标签:
【中文标题】解压缩并将内容推送到表格视图中【英文标题】:Unzip and push the contents in a tableview 【发布时间】:2010-12-17 08:49:18 【问题描述】:我有一个 tableView 列出了我的文档目录的内容。我有一些 zip 文件。如果我在 tableView 中触摸一个文件,则相应的 zip 文件将解压缩到一个临时目录中。
问题是如何导航我在 tableView 中提取的内容。如果假设,提取的 zip 文件包含文件夹,我应该能够在 tableView 中查看它们。实际上流程应该像DrillDown。
我可以提取 zip 文件,但问题是,必须在 tableView 中导航它们。 请给我一些想法或一些源代码来帮助我解决问题。 谢谢。。
【问题讨论】:
【参考方案1】:我会尝试为您提供一些解决此问题的建议。我能想象的最好的方法是设计一个表格视图,每次单击列表中的项目时都会不断更新其数据源。
让我们明确一点:假设您有第一个包含 zip 文件列表的表格视图。单击一行,将 zip 文件解压缩到本地文件夹,然后将另一个表推送到导航控制器,该表将显示解压缩文件的内容。
这个新表将维护一个指向父文件夹的指针(我们称之为parent
),在开头设置为nil
,并将包含您当前所在文件夹的内容列表。所以,此数据源将向您显示根文件夹(解压 zip 文件所在的文件夹)的内容以及文件夹和文件。
当您单击代表文件的行时,您将执行相应的逻辑(打开文件、上传文件、编辑、通过电子邮件发送或其他)
当您点击代表文件夹的行时,您应该:
-
将数据源的
parent
设置为您当前所在的文件夹(在本例中为根文件夹)
读取您选择的文件夹的内容
用您刚刚阅读的内容更新数据源的数据
在表格视图中重新加载数据(例如[tableView reloadData]
)
您的表格视图应显示一个按钮或专用行,以导航回父文件夹(包含在 parent
参数中的文件夹),以便您可以在每次需要时来回切换。
我认为该解决方案应该可以正常工作。
【讨论】:
以上是关于解压缩并将内容推送到表格视图中的主要内容,如果未能解决你的问题,请参考以下文章