自定義UITableViewCell的多選樣式

簡單來說就是隱藏系統(tǒng)的UITableViewCellEditControl,
添加一個自己的view.

@property(nonatomic, strong) UIImageView *customEdit;

- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {

    if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {

        UIImage *image = [UIImage imageNamed:@"image"];
        UIImage *highlightedImage = [UIImage imageNamed:@"highlightedImage"];

        _customEdit = [[UIImageView alloc] initWithImage:image highlightedImage:highlightedImage];
        [self.contentView addSubview:_customEdit];
        [_customEdit mas_makeConstraints:^(MASConstraintMaker *make) {
            make.right.equalTo(_nameLabel.mas_left).offset(-9);
            make.centerY.equalTo(_nameLabel.mas_centerY);
        }];
    }
    return self;
}

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
    [super setSelected:selected animated:animated];
    self.customEdit.highlighted = selected;
}

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated {
    [super setHighlighted:highlighted animated:animated];
    self.customEdit.highlighted = highlighted;
}

- (void)willTransitionToState:(UITableViewCellStateMask)state {
    [super willTransitionToState:state];

    if (state == UITableViewCellStateShowingEditControlMask) {
        for (UIView *subview in self.subviews) {
            if ([subview isMemberOfClass:NSClassFromString(@"UITableViewCellEditControl")]) {
                subview.hidden = YES;
            }
        }
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容