从Swift数组中的选定复选标记中删除字符串
Posted
技术标签:
【中文标题】从Swift数组中的选定复选标记中删除字符串【英文标题】:Deleting string from selected checkmark in array at Swift 【发布时间】:2018-05-01 12:42:30 【问题描述】:我想通过复选标记从未选择的行中删除数据。现在我可以将字符串附加到已检查的数组中。但我想从数组中删除哪些未经检查的数据。如何从我的阵列中删除未经检查的数据?
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
if(tableView == self.tableView_1)
if(tableView_1.cellForRow(at: indexPath)?.accessoryType == UITableViewCellAccessoryType.none)
tableView_1.cellForRow(at: indexPath)?.accessoryType = UITableViewCellAccessoryType.checkmark
checkedItemsForGender.append(cinsiyet[indexPath.row])
else
tableView_1.cellForRow(at: indexPath)?.accessoryType = UITableViewCellAccessoryType.none
checkedItemsForGender.remove(at: cinsiyet[indexPath.row]) // ??? ERROR
【问题讨论】:
你有两个账号this和this吗?无论如何,您还没有从另一个帐户对question 进行更正。 :) 【参考方案1】:你应该使用这个:
if let index = checkedItemForGender.index(of: cinsiyet[indexPath.row])
checkedItemsForGender.remove(at: index)
【讨论】:
【参考方案2】:如下更新您的else
以修复error
和index out of bound exception
的可能性
if let index = checkedItemForGender.index(of: cinsiyet[indexPath.row]),
index < checkedItemsForGender.count
checkedItemsForGender.remove(at: index)
【讨论】:
以上是关于从Swift数组中的选定复选标记中删除字符串的主要内容,如果未能解决你的问题,请参考以下文章
添加/删除 UITableView 选择到数组,复选标记在滚动时消失 - Swift