如何在tableview swift中显示Checkmark?

我必须在选择某些数组值之前显示复选标记,我必须显示数组值1的复选标记,并且不显示0.如何执行此操作。检查以下代码:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) cell.textLabel?.text = AllItems[indexPath.row] as? String for dict1 in selectedItems { if Intvalues == dict1 as? NSObject { // I have to show CheckMark } else if ZeroIntvalues == dict1 as? NSObject { // I don't need to show CheckMark } } cell.textLabel?.textColor = UIColor.whiteColor() return cell } 

因为@ Paulw11说的原因,你的代码是错误的。 每个tableViewCell都显示复选标记,因为for循环的最后一个对象始终为1

 func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) cell.textLabel?.text = AllItems[indexPath.row] as? String if Intvalues == AllItems[indexPath.row] as? Int { // I have to show CheckMark cell.accessoryType = .Checkmark } else { cell.accessoryType = .None } cell.textLabel?.textColor = UIColor.whiteColor() return cell } 

Tableview单元格有附件类型,在tableviewCellForRowAtIndexPath中使用它

 cell.accessoryType = UITableViewCellAccessoryCheckmark; 

你在下面显示复选标记。

  cell.accessoryType = .None if Intvalues == dict1 as? NSObject { // I have to show CheckMark cell.accessoryType = .Checkmark } 

这是我在我的应用中使用的方法,

如果您正在使用webservice,那么在调用webservice之后实现此逻辑:

webservice调用部分中的此代码:

 for i in 0.. 

现在管理CellForRowAtIndexPath中的条件:

 let dict = arrNotificationList[indexPath.row] as! NSDictionary if(dict["isChecked"] as! String == "0") { // Unchecked cell.btn_CheckUnCheck.setImage(UIImage(named: "uncheck"), forState: UIControlState.Normal) } else { // Checked cell.btn_CheckUnCheck.setImage(UIImage(named: "check"), forState: UIControlState.Normal) } // in this condition you can manage check uncheck status 

现在我们可以检查或取消选中一个按钮的代码

 let dict = arrNotificationList[indexValue] as! NSMutableDictionary if(dict["isChecked"] as! String == "1") { dict.setObject("0", forKey: "isChecked") } else { dict.setObject("1", forKey: "isChecked") } arrNotificationList.replaceObjectAtIndex(indexValue, withObject: dict) tblView.reloadData()