tableview cell 选中后 改变颜色

clipboard.png
我想实现这种效果, 点击时 改变cell的背景色, 和里面label的颜色, 点击另一个时, 之前的一个恢复之前的颜色, 我试了试 用didSelectRowAtIndexPath 方法, 里面去得到cell, 改变颜色,但是当点击其他的cell的时候, 之前的cell如何恢复原样? 还是我的思路不对,请指教

阅读 6.4k
2 个回答

自定义UITableViewCell,重载其方法

\- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
    [super setSelected:selected animated:animated];
    
    // Configure the view for the selected state
    // 这个判断selected,设置子试图状态
    if (selected) {
        //......
    }
    else {
        //......
    }
}

看你是个初学者, 先给你几个方向吧

// UILabel.h
@property(nonatomic, strong) UIColor *highlightedTextColor
// UITableViewCell.h
// 背景View
@property (nonatomic, strong, nullable) UIView *selectedBackgroundView;
// 选中事件
- (void)setSelected:(BOOL)selected {}

如果还有疑问,可以回复

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题