首先清楚一點, 當咱們點擊cell的時候, 會默認是藍色的效果atom
@property(nonatomic,getter=isSelected) BOOL selected; // 是否被選中spa
若是是YES, 選中cell的時候, cell會變成藍色, 讓用戶知道被選中了圖片
若是是NO, 點擊cell手指不離開, cell仍是會顯示藍色, 當手指離開後, 藍色消失get
有時候cell只是起到展現信息的做用,並無跳轉頁面之類的, 顯然若是將selected=NO仍是有些不滿意, 由於cell在點擊的時候仍是會有變化, 如何設置一下, 讓用戶點擊cell一點反應都沒有呢it
@property(nonatomic) UITableViewCellSelectionStyle selectionStyle; // default is UITableViewCellSelectionStyleBlue.io
看到這裏, 咱們笑了, 原來點擊的那個藍色效果就是這裏出來的, 看看還有些其餘能夠選擇的table
UITableViewCellSelectionStyleNone,select
UITableViewCellSelectionStyleBlue, //default margin
UITableViewCellSelectionStyleGraytop
顯然UITableViewCellSelectionStyleNone這個屬性就是咱們想要的了
這個屬性提供了2種顏色, 默認的藍色和灰色, 但這遠遠不夠, 因此咱們須要自定義選中cell時的顏色
@property(nonatomic,retain) UIView *selectedBackgroundView;
看看這個屬性, 就知道是什麼了
cell.contentView.backgroundColor = [UIColor clearColor];
UIView *aView = [[UIView alloc] initWithFrame:cell.contentView.frame];
aView.backgroundColor = [UIColor redColor];
self.selectedBackgroundView = aView; 設置選中後cell的背景顏色
[aView release];<p>
這裏舉例這是單純的設置顏色, 其實能夠有不少花樣
selectedBackgroundView是View類型, 咱們能夠用UIImageView也行, 在嵌套圖片, 效果能夠作的更好
同理如何來設置cell的背景顏色呢(跟點擊cell沒有關係)
須要說明一點的是:
若是tableView是plain類型, 那麼cell的背景顏色就是tableView的背景顏色, 就算設置了cell.backgroundColor貌似也沒用
若是tableView是group類型, cell的背景顏色跟tableView的背景無關, 須要單獨在設置cell.backgroundColor
@property(nonatomic,retain) UIView *backgroundView;
看這個屬性就知道了, 至於如何設置跟上面相同