在自定义单元格中,我有一个UILabel和UISwitch。我想在开关打开时获取标签文本。我在switch的值更改事件上保留了一个方法,但应用程序正在崩溃。
答案 0 :(得分:0)
我假设你的意思是自定义UITableViewCell。当交换机发生变化时,有多种方法可以获取相关标签:
如果您的表不是可变长度(因此带有标签/开关的单元格是唯一的),当您创建单元格缓存时,UILabel *对象和UITableViewController子类中的开关对象为ivars并关联它们在一起。
如果你的表是可变长度的,你需要维护UILabel *和switch *的数组,或者你也可以继承UITableViewCell(注意你可以通过nib为UITableViewCell提供一个自定义接口,而不必一定子类,你没有提到你是否已经子类化),挂钩switch事件去你的UITableViewCell子类,然后读取相应的标签,和/或将事件转发到UITableView子类(这是一个“推” “模型而不是”拉“模型),有时这个组织比在UITableViewCell中维护跟踪单个UITableViewCells中对象的对象数组更容易管理。