动画UITableView索引的最佳方法是什么?

时间:2012-01-23 23:34:44

标签: ios uitableview ios4 user-interface core-animation

我有一个UITableView,屏幕底部有一个类似UIToolbar的视图。当用户对表数据执行某些操作时,我想动态地设置工具栏的动画以上下滑动以在屏幕上显示和消失。我遇到的问题是,当我向上设置工具栏动画时,它会覆盖索引的最后几个字母。

我想将索引大小缩小为动画,以及工具栏动画。标准的UITableView索引功能不允许我们通过sectionIndexTitlesForTableView访问此视图,而只是视图显示的内容。以这种方式修改它的最佳方法是什么?

Example

2 个答案:

答案 0 :(得分:3)

一种方法是为整个表格视图高度设置动画。这也会阻止您的工具栏基本上覆盖最后一个单元格,以防他们在工具栏启动时想要对其执行某些操作。

如果您有一个UITableViewController,那么您可能需要将代码移动到普通的UIViewController中。

另一种方法是枚举表视图的子视图并以这种方式查找节标题视图,但我不确定它是否能很好地工作。

答案 1 :(得分:2)

请记住,UITableView只是另一个滚动视图。只需根据工具栏的高度调整contentInsetscrollIndicatorInsets

UIEdgeInsets contentInset = self.tableView.contentInset;
contentInset.bottom = self.myToolbar.frame.size.height;
self.tableView.contentInset = contentInset;

UIEdgeInsets scrollInset = self.tableView.scrollIndicatorInsets;
scrollInset.bottom = self.myToolbar.frame.size.height;
self.tableView.scrollIndicatorInsets = scrollInset;