美文网首页
UITableCell 点击 子view背景色消失问题

UITableCell 点击 子view背景色消失问题

作者: sunflower1518 | 来源:发表于2019-11-14 11:22 被阅读0次

    方式1:

    - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
        UIColor *color = self.aLab.backgroundColor;
        [super setSelected:selected animated:animated];
        self.aLab.backgroundColor = color;
    }
    
    - (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated {
        UIColor *color = self.aLab.backgroundColor;
        [super setHighlighted:highlighted animated:animated];
        self.aLab.backgroundColor = color;
    }
    

    方式2:
    使用view.layer.backgroundColor

    {
            //使用Label.layer.backgroundColor有效✅
            UILabel *view = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, 8)];
            view.layer.backgroundColor = [UIColor blueColor].CGColor;
            [self.contentView addSubview:view];
            
            //使用Label.backgroundColor无效❌
            UILabel *view2 = [[UILabel alloc] initWithFrame:CGRectMake(0, 10, 50, 8)];
            view2.backgroundColor = [UIColor blueColor];
            [self.contentView addSubview:view2];
            
            //使用Label.backgroundColor无效❌
            UILabel *view3 = [[UILabel alloc] initWithFrame:CGRectMake(0, 20, 50, 8)];
            view3.backgroundColor = [UIColor blueColor];
            view3.layer.backgroundColor = [UIColor redColor].CGColor;
            [self.contentView addSubview:view3];
        }
    
        {
            //使用View.layer.backgroundColor无效❌
            UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 30, 50, 8)];
            view.layer.backgroundColor = [UIColor redColor].CGColor;
            [self.contentView addSubview:view];
            
            //使用View.backgroundColor无效❌
            UIView *view2 = [[UIView alloc] initWithFrame:CGRectMake(0, 40, 50, 8)];
            view2.backgroundColor = [UIColor redColor];
            [self.contentView addSubview:view2];
        }
    
    //无色
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    //蓝色
    cell.selectionStyle = UITableViewCellSelectionStyleBlue;
    //灰色
    cell.selectionStyle = UITableViewCellSelectionStyleGray;
    
        UIView *bkView = [[UIView alloc] initWithFrame:self.bounds];
        bkView.backgroundColor = [UIColor redColor];
        self.selectedBackgroundView = bkView;
    

    相关文章

      网友评论

          本文标题:UITableCell 点击 子view背景色消失问题

          本文链接:https://www.haomeiwen.com/subject/autrictx.html