2010-11-11 71 views
1

我有一个基于导航控制器的简单iPhone应用程序。有两个视图控制器,VC1和VC2,都带有表视图。 VC2也有一个自定义表格单元格。当用户在VC1中选择一行时,VC2被压入堆栈。当用户选择后退按钮时,它将被删除。典型的导航东西。按下后退按钮清除表格内容

我遇到的问题是当按下后退按钮时,VC2中的单元格中的数据仍然存在,因此当用户在VC1中选择不同的行时,VC2被推回到具有“旧”在VC2中的方法重新加载数据之前,单元格中的数据。

我想确保每次按下后退按钮时都会删除VC中表格中的数据。我试着用viewWillDisappear释放tableview,但它不起作用。处理这种情况的建议方式是什么?我看过文档,但它不是很明显(对我来说至少)。

+0

凹凸。任何想法的人? – 2010-11-11 18:00:53

回答

0

自从我问原来的问题以来,我已经多次使用这种技术。正如我在对@Aditya的评论中所提到的,我发现解决这个问题的最简单方法是使用viewWillDisappear来隐藏tableview中的'旧'数据,并且当用户返回到页面时,请等到在使tableview再次可见之前,将'new'数据加载到表中。

0

尝试在viewWillDissapear或dealloc方法中的这段代码片段。

if(yourTableViewCellObject) [yourTableViewCellObject release]; 
if(yourTableViewCellObject) yourTableViewCellObject=nil; 

这可能有效。

+0

谢谢,这可能有效,但我找到了一个更简单的解决方案。我简单地将viewview中的tableview隐藏在viewWillDisappear中,并在表中填充新数据时再次显示。 – 2010-11-25 15:41:45