我还没有找到任何很好的例子来说明如何做到这一点。有一个我想用作附件按钮的图像,当我将其放入并单击时它不起作用。所以它看起来正确但不起作用...... 这是我的代码:
[cell setAccessoryType:UITableViewCellAccessoryDetailDisclosureButton];
cell.accessoryView = [[UIImageView alloc]
initWithImage:[UIImage imageNamed:@"TableView_Green_Disclosure.png"]];
那么如何让我的 UIImageView 在被点击时调用 accessoryButtonTappedForRowWithIndexPath
?
最佳答案
通读 accessoryView
和 accessoryType
会发现它们是自定义单元格的互斥方式。
设置 accessoryType
将导致在点击时调用 TableView 委托(delegate)方法。
设置 accessoryView
将忽略 accessoryType
的设置并给你一些东西来显示。如果您想从已放置的自定义 View 接收回调,它应该是一个连接起来的控件。 (或任何带有手势识别器的 View 。)
如果您使用按钮,并将其操作设置为 accessoryTapped:
,您将收到该按钮作为“发送者”参数。您可以沿着 View 层次结构向上走,直到找到一个 TableView 单元格,然后询问您的 TableView 该单元格的 indexPath 是什么。然后,这将为您提供模型对象的索引,并且您能够对其采取适当的行动。
替代按钮,您可以在上面的 UIImageView 上启用交互,并向其添加手势识别器。
关于objective-c - 如何制作自定义 tableView 单元配件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6525296/