[IOS 开发] 自定义(重写) UITableViewCell的高亮背景色

IOS的sdk中,对UITableViewCell的高亮背景色只支持两种颜色,分别为UITableViewCellSelectionStyleBlueUITableViewCellSelectionStyleGray

那么如何自定义这个颜色呢。一个思路是当用户点下cell时设置你想要的cell的背景色,当释放点击时给cell重新设回原来的背景色,这样就能达到预想的效果了。

下面是具体实现的代码:

 

 

- (void)drawRect:(CGRect)rect  
{  
    if (self.highlighted) {  
        self.backgroundColor = [UIColor colorWithHexString:@"0x383838"];  
    }else{  
        self.backgroundColor = [UIColor clearColor];  
    }  
}  
  
- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated  
{  
    [super setHighlighted:highlighted animated:animated];  
    [self setNeedsDisplay];  
}  

 

1. 继承UITableViewCell

        2. 重写以上两个方法。

         当每次用户点击或者释放的时候,系统都会来调用下面这个方法,从而来改变cell的高亮背景色。

 

 

 

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。