如何将对象附加到 iOS 中的控件/UIView,以便我可以清楚地知道我正在处理哪个控件?
场景是我有一个“绑定”到字符串数组的 UITableView。我在单元格中有一个自定义控件(UISwitch),有时会触发行/单元格的删除。
在回调中(通过在我的 UISwitch 上调用 addTarget 设置)我无法知道哪个单元格触发了事件。
UISwitch 上是否有一个属性可以用来指示这一点。理想情况下,我可以附加原始数据源对象。在 Microsoft 技术中,控件通常具有一个标记属性,该属性可以保存对任何内容(对象/id)的引用。然而,Cocoa Touch 中的 tag 属性是一个 NSUInteger,它并没有真正的帮助——因为一旦你从数组中间删除了一个项目,存储索引就不起作用了;一切都不同步。