2011-09-27 69 views
0

我有一个导航控制器与两个UITableViewControllers一起工作。第一个UITableViewController向用户显示他们的图片库列表,当他们点击一个单元格时,第二个UITableViewController被压入堆栈并在库中显示图片(很像UIImagePicker)。我想要做的是,当用户在最初的UITableViewController上选择一个照片库时,我希望导航标题不带动画,而UITableViews的过渡则具有动画效果。有没有办法做到这一点,或者我需要实现一个UIViewController交换两个UITableViews(然后我不确定是否可以在第二个UITableView交换后编辑后退按钮?)。2 UITableViewControllers与1 UIViewController交换两个UITableViews

回答

0

我敢肯定,最简单的方法是将两个UITableView添加到UINavigationController的视图中,并使用didselectrowatindexpath中的[UIView beginAnimation]对它们进行动画处理。您还应该有一个标志来保存视图状态 - 向用户或图像选择器显示库选取器视图。然后,您将能够在后退按钮选择器中正确处理此问题。

这是IMO最简单的方法。

+0

所以为了做到这一点,我必须继承UITableView,并使其成为自己的委托?那么我怎样才能将数据加载到tableview中,我想在tableview子类中做它会很糟糕,所以必须在视图控制器中做到这一点?这似乎很奇怪,似乎违反了MVC,令人惊讶的是,在不更改导航控制器的情况下,很难交换表格视图。 –

0

我推荐一个UIViewController并为表格视图的框架设置动画以在它们之间转换。

+0

所以为了做到这一点,我必须继承UITableView,并使其成为它自己的委托?那么我怎样才能将数据加载到tableview中,我想在tableview子类中做它会很糟糕,所以必须在视图控制器中做到这一点?这似乎很奇怪,似乎违反了MVC,令人惊讶的是,在不更改导航控制器的情况下,很难交换表格视图。 –