cocoa-touch - UITableViewCell setSelected 方法没有被调用

标签 cocoa-touch ios7 uitableview uistoryboard

我使用的是 iOS7,并且我的 UITableView 有一个带有静态单元格的 UITableViewCell 子类。我在实现中重写了 setSelected 方法。

由于某种原因,该方法仅在表格加载时被调用,但在实际点击和选择单元格时不会被调用。

我在这里做错了什么?我如何让它工作?

@implementation StudentMenuMultipleOptionsTableViewCell

- (void)setSelected:(BOOL)selected {
    [super setSelected:selected];
    if (selected) {
        UIView *view = [UIView new];
        view.backgroundColor = [UIColor colorWithRed:0.542 green:0.788 blue:0.060 alpha:1.000];
        self.selectedBackgroundView = view;
    }
    else {
        for (UIView *view in self.subviews) {
            if ([view isKindOfClass:[BlackBackgroundSelectedButton class]]) {
                BlackBackgroundSelectedButton *button = (BlackBackgroundSelectedButton *)view;
                button.selected = NO;
                [button setWhite];
            }
        }
    }
}

@end

ScreenShot

最佳答案

问题是我使用的是 setSelected 方法。较新的iOS版本需要使用的方法是:

- (void)setSelected:(BOOL)selected animated:(BOOL)animated;

关于cocoa-touch - UITableViewCell setSelected 方法没有被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22841119/

相关文章:

ios - NSManagedObject ChangedValues 忽略字符串值

objective-c - 在 iPod Touch 上安装越狱应用程序(有效但没有数据)

ios - 如何使 searchResultsTableView 使用自定义单元格而不是默认单元格

objective-c - iOS 7 : Multipeer connectivity - Multiple Sessions?

iphone - UITableViewCell中UILabel宽度的动态计算

ios - NSLineBreakByWordWrapping 在第一行,但 NSLineBreakByTruncatingTail 在第二行?

iphone - iOS7 navigationBar 和 TabBar Color 表现异常

ios - 向下滚动后更改节标题 View

ios - 如何使用枚举列表填充 UITableView?

ios - 带有 UIButton : unable to change UIImage 的自定义 UITableViewCell