我在IB中创建了一个自定义的UITableViewCell子类。我有3个按钮,我想重置他们选择的状态。我以为我可以做这样的事,但它不起作用。子视图从不是一种UIButton类。我接近这个问题了吗?我是否循环了UITableViewCell的正确属性?我在调试器中看到,有我的单元格变量,然后在它下面略微缩进,我看到UITableViewCell和我的3个按钮。但我不知道如何获得这些按钮的引用。感谢。
NSIndexPath *conditionPath = [NSIndexPath indexPathForRow:0 inSection:1];
UITableViewCell *cell = [self.FilterSortVC.TableView cellForRowAtIndexPath:conditionPath];
for (UIView *subview in cell.subviews) {
if ([subview isKindOfClass:[UIButton class]]) {
UIButton *aButton = (UIButton *)subview;
aButton.selected = NO;
}
}
答案 0 :(得分:0)
尝试为每个按钮设置一个标记,为每个按钮声明一个常量,使其具有更多可读代码,然后使用viewWithTag:
从层次结构中获取视图。
答案 1 :(得分:0)
我认为单元格中的项目存储在contentView
中。
试试这个:
for (UIView *subview in cell.contentView.subviews) {
if ([subview isKindOfClass:[UIButton class]]) {
UIButton *aButton = (UIButton *)subview;
aButton.selected = NO;
}
}