【发布时间】:2016-11-28 18:07:02
【问题描述】:
如果需要获取特定对象数组中包含的对象,如何使用 contains。
尝试为 tableview 行选择和取消选择复选框(使用 2 个图像)。
代码:
var originalParams = [ParamsModel]()
var selectedParams = [ParamsModel]()
if selectedParams.contains(originalParams[indexPath.index]) {
cell.btnSelect.setBackgroundImage(UIImage(named:"checked.png"), for: UIControlState.normal)
}
else
{
cell.btnSelect.setBackgroundImage(UIImage(named:"unchecked.png"), for: UIControlState.normal)
}
我正在使用 swift 3.0。它显示编译器错误“调用中缺少参数标签 'where'”。任何帮助表示赞赏。
【问题讨论】:
-
你在问什么?这个真的不清楚。
-
这是否如您所愿:
selectedcheckboxArray.contains(checkboxArray.objectAtIndex(indexPath.row))? -
顺便说一下,不要在变量名中使用“Array”。简单地使它复数,数组是隐含的。例如
selectedCheckboxes而不是selectedcheckboxArray -
@AlexanderMomchliov 。正是这个 selectedcheckboxArray.contains(checkboxArray.objectAtIndex(indexPath.row)) 是我试过的,但 objectAtIndex 不存在数组。我可以使用其他任何方法吗?
-
哦,当然,只需为数组下标:
checkboxArray[indexPath.row]。当然应该是 Swift 类型,而不是 NSArray