从UITableView部分页眉或页脚确定部分索引?

时间:2009-11-25 21:28:14

标签: iphone objective-c uitableview

我有一个多节表视图,每个节的页脚都有一个按钮,应该在该节添加一个新项。部分的数量没有预先确定或限制,所以我不能为每个部分创建单独的选择器,如“addItemToSection1”等。

我也不能将节索引存储在按钮的“tag”属性中,因为该表还支持添加或删除任意节,这会更改所有后续节的节索引。

我唯一能想到的就是保持我自己的,独立的地图,从按钮到部分或类似的东西,这是比我想要的更加繁琐的gruntwork。有没有办法直接确定给定页眉或页脚的哪个部分?

2 个答案:

答案 0 :(得分:2)

Re:gerry3上面的答案(作为“答案”添加,因为SO不允许我出于某种原因对上述答案发表评论。)

感谢您的信息。似乎没有办法避免必须维护一个单独的数据结构来将部分映射到底层模型和/或从底层模型映射部分,因为我必须有部分索引,所以我可以调用诸如insertRowsAtIndexPaths:withRowAnimation:之类的东西,并且因为该部分由于添加或删除部分,索引可能会更改。多烦啊!

答案 1 :(得分:1)

我已经看到了一些方法,用于将按钮与其tableview单元格相关联,或者更重要的是,与该单元格相关联的行或数据。你应该可以为tableview部分做类似的事情。

  1. 使用按钮的标签。在按钮的动作选择器中,使用按钮的标签来获取数据。听起来你已经排除了这一点。
  2. 对具有相关数据属性且按钮作为子视图的部分使用自定义视图。在按钮的操作选择器中,将自定义视图的特定实例作为按钮的父视图。然后,从自定义视图的属性中获取数据。
  3. 将按钮放在一个按钮数组中,将数据放在与相应按钮相同索引的数据数组中。在按钮的动作选择器中,找到按钮数组中按钮的索引,并使用该索引从数据数组中获取数据。