2012-11-24 21 views
1

我很难找出只转换视图控制器一部分的最佳方式。 这就是我所拥有的: 在我的第一个视图控制器中,我有一个UIView,它的作用类似于我提供一些ImageViews和Labels的标题,下面我有一个表视图。 当用户从表格中单击一个单元格时,会推送另一个视图控制器,并且它包含与之前相同的UIView标题,并在下面显示有关所选单元格项目的详细信息。iOS 5部分转换视图控制器

这就是我想要的: 由于两个视图控制器都具有相同的UIView标题,我希望它是固定的,只更改底部内容(表视图或详细信息)。我期望转换效果只会移动底部的内容。

我很欣赏任何指导。

回答

0

视图控制器控制视图,所以它不是转换视图控制器的情况,你可以通过转换视图来实现。

您可以有多个视图。占据窗户的一部分。

在你的情况下,你可以保持顶部视图(你称之为头部的视图),当你需要改变视图的一部分时,你的控制器只需创建一个新视图来显示,然后你就可以为它创建动画进入它在旧观点之上的新位置。

UIView动画让你完成这件事。例如,您可以使用transitionFromView:toView:duration:options:completion:将表格视图设置为详细视图。

如果需要,可以为此详细视图设置不同的视图控制器。所有你需要做的就是创建视图控制器和配置其视图所需的信息,然后将该视图作为toView传递给上述方法,然后当你完成视图时,可以使用相同的方法转换回原始的tableview。

+0

我明白你的建议,而且我希望在显示第二个视图时显示导航控制器中的后退按钮。这就是为什么我使用由导航控制器管理的两个视图控制器。 – user1849785

+0

我不明白你的意思。你想要一个顶级导航控制器还是你想在导航控制器中使用你的子视图? – Abizern

+0

顶级导航控制器。 – user1849785