如何取消tableView點擊cell的選中效果


tableView我們經常要用到,然后很多地方我們並不需要點擊cell的時候有帶灰的選中效果,那么這里我介紹一下3種方法  如何取消cell的選中效果

1,通過更改tableViewCell的selectionStyle屬性進行設置(自己親測了一下,只有none和default兩種style可用):

自定義cell里面:

- (void)awakeFromNib {
    [super awakeFromNib];

    self.selectionStyle = UITableViewCellSelectionStyleNone;
}

2,設置tableView的allowsSelection屬性   注意:屬性為NO的時候   tableView的代理方法: 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 就不會執行 ,所以如果需要有cell點擊事件的  不要用此方法

tableView.allowsSelection = NO; 

 

3,更改cell屬性selectedBackgroundView 的背景色

我們選中cell時有灰色效果就是因為selectedBackgroundView這個家伙,所以,我們可以通過設置改View的背景色來改變選中顏色

self.selectedBackgroundView = [[UIView alloc] initWithFrame:cell.frame];  
self.selectedBackgroundView.backgroundColor = [UIColor redColor]; 

 注意點:

1, 在storyboard設置tableView屬性的時候   如果這樣設置   selection: NoSelection   會導致點擊cell的時候沒反應  不會調用 didSelectRowAtIndexPath 方法   要想有點擊方法應設置成 selection: SingleSelection

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM