2012-08-09 17 views
0

我設置UITableview選定單元格樣式仄的標記,但問題是,它顯示了檢查的時候選擇了一個小區,但是當我們選擇新小區中其他小區ASLO被檢查還標有第一種。我想,要顯示選定單元格設置UITableView的SelectedCell附件類型勾選

UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath]; 

if ([selectedCell accessoryType] == UITableViewCellAccessoryNone) { 
    [selectedCell setAccessoryType:UITableViewCellAccessoryCheckmark]; 


} 
else { 
    [selectedCell setAccessoryType:UITableViewCellAccessoryNone]; 
} 
[tableView deselectRowAtIndexPath:indexPath animated:NO]; 

回答

0

回報細胞在此之前的代碼添加到您的cellForRowAtIndexPath只有一個對勾;

if (self.selectedIndexPath != nil && self.selectedIndexPath.row == indexPath.row 
       && self.selectedIndexPath.section == indexPath.section) { 
     cell.accessoryType = UITableViewCellAccessoryCheckmark; 
    } 
    else { 
     cell.accessoryType = UITableViewCellAccessoryNone; 
    } 

而且這個代碼到你的didSelectRowAtIndexPath

UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath]; 

    if (self.selectedIndexPath != nil) { 
     // Uncheck previously selected cell 
     UITableViewCell *prevSelectedCell = [tableView cellForRowAtIndexPath:self.selectedIndexPath]; 
     [prevSelectedCell setAccessoryType:UITableViewCellAccessoryNone]; 
    } 
    [selectedCell setAccessoryType:UITableViewCellAccessoryCheckmark]; 
    self.selectedIndexPath = indexPath; 

    [tableView deselectRowAtIndexPath:indexPath animated:NO];