在我的代码中,我有一个NSMutableArray
。我想从该数组中获取所有值到String
,我想检查字符串值是否在tableview
中加载的另一个名为 hairStyleManIDArray 的数组中,如果字符串值为 tableview(hairStyleManIDArray)数组意味着我想为特定行分配复选标记,否则删除复选标记。
tableview加载的数组看起来像这样,
hairStyleManIDArray is : (
23,
32
)
Mutable数组看起来像这样,
idMutableArray is (
30,
29,
32,
41
)
所以我使用以下方法将NSMutableArray转换为String。
idStr = idMutableArray.componentsJoined(by: ",") as String
print("idStr is ",idStr)
现在String看起来像这样,
idStr is : 30,29,32,41
现在我使用此方法检查字符串值是否在表视图行中。
if hairStyleManIDArray[indexPath.row] as! String == idStr {
cell.accessoryType = .checkmark
}
else
{
cell.accessoryType = .none
}
要检入两个数组值都在两者中找到,所以我想在特定行中设置复选标记,但它不起作用请帮我完成任务。
答案 0 :(得分:0)
没有必要将idMutableArray
转换为String而不是简单地使用contains
来检查对象是否在内部而不是在快速使用中代替NS(Mutable)Array
swift类型数组意味着{{ 1}}。
[String]
答案 1 :(得分:0)
您可以执行以下操作,而无需将值转换为String。
let hairStyleID = hairStyleManIDArray[indexPath.row]
if idMutableArray.contains(hairStyleID)
{
cell.accessoryType = .checkmark
}
else
{
cell.accessoryType = .none
}