创建自定义TableView单元格附件
问题
iOS SDK提供的附件不满意,想要创建自己的附件。
方案
把类型UIView的一个实例分配到任何UITableViewCell类的实例的accessoryView属性。
这段代码使用performExpand:方法叙谈每个按键的选择器。下面是这个方法的定义:
图4-4. 带有自定义附件视图的TableView单元格
讨论
UITableViewCell类型对象保留一个名为accessoryView属性。
如果对内置iOS SDK TableViewCell的附件不完全满意的话,可以把别的视图赋予这个属性。属性设置之后,Cocoa Touch将忽略accessoryType属性的值,同时把分配到accessoryView属性的值作为分配的附件用到单元格中。
当点击任何单元的按钮,performExpand:方法就会被调用。如何决定发送按钮属于哪一个单元格?现在,我们要以某种方式把我们的与其所属的cell连接起来。
处理这个问题的一个办法是检索触发事件的按钮的superView。TableViewCell的辅助视图作为他们的子视图添加到cell的配件视图,因为检索按钮的superView将返回TableViewCell,返回的这个拥有配套的视图按钮的cell: