1. 程式人生 > >tableViewCell的選中狀態的還原

tableViewCell的選中狀態的還原

一:pop返回table時,cell自動取消選中狀態

需求:

一個ViewController,上邊有tableView,選擇不同的cell會push進入下一層,返回進入ViewController時,上一次選擇的cell還是點選選中狀態,UITableViewController就不會這樣。

原因:

UITableViewController有一個clearsSelectionOnViewWillAppear的property,而當把UITableViewController修改成UIViewController後,這個屬性就不存在了.

解決:

在viewWillAppear方法中加入:
[self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];

二:點選過後,取消點選(最簡單,常用的)

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    //消除cell選擇痕跡
    [tableView deselectedRowAtIndexPath:indexPath animated:YES];
}