获取UITableView页眉/页脚

时间:2012-04-04 13:44:01

标签: objective-c uitableview

好的,所以我有这个问题,我需要访问UITableView中显示的页眉/页脚。而且,我需要从UITableView的子类中执行此操作(因此我不能简单地将标记从UITableView Delegate分配给视图)。 UITableView确实保留了一系列可见的页眉和页脚,但是它提供了对这些数组甚至子类的访问权限,我个人认为它是asinine。

我需要这个,以便我可以提供自定义的拖放插入/移动用户界面。我试图让它几乎完全像Apple自己的重新安排界面,但当然,我自己的自定义实现(如从另一个表拖动的能力)。除了页眉/页脚之外,一切都很完美。

目前我正试图通过迭代UITableView的所有子视图来破解它。我很确定UITableView的唯一子视图是:backgroundView,UITableViewCells和Headers / Footers。所以我只需要确定哪些是UITableViewCells(非常简单),这是背景视图(也很简单),它们是页眉/页脚(不那么容易)。我很确定我可以这样做,但这肯定是一个黑客,如果可能的话,我宁愿找到更好的方法。

更新

我正在覆盖- (void) setDelegate:(id<UITableViewDelegate>)delegate方法并检查委托是否响应相应的选择器以生成页眉/页脚(并适当地设置BOOL)。这使得自标题的进展以来确定特定子视图更加容易 - &gt;细胞 - &gt;页脚是可预测的。

1 个答案:

答案 0 :(得分:0)

你说你不能使用UITableView委托方法,但你是否考虑让UITableView子类对象成为它自己的委托?在子类上创建一个名为realDelegate的独立属性,并将任何其他委托调用传递给它。