我有一个TableView,从中获取数组中的选定值,但它不是所需的数组:tableViewCell's
我怎样过滤它才能得到[<NSIndexPath: 0xc000000000200016\> {length = 2, path = 0 - 1}: "test1234", <NSIndexPath: 0xc000000000000016> {length = 2, path = 0 - 0}: "Judson"]
?
这是我正在使用的代码:
var selectedTextLabels = [NSIndexPath: String]()
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){
let cell = tableView.cellForRowAtIndexPath(indexPath) as! UsersTableViewCell
if (cell.accessoryType == UITableViewCellAccessoryType.Checkmark){
cell.accessoryType = UITableViewCellAccessoryType.None;
selectedTextLabels[indexPath] = nil
} else {
cell.accessoryType = UITableViewCellAccessoryType.Checkmark;
if (cell.accessoryType == UITableViewCellAccessoryType.Checkmark){
if let text = cell.collegeNameLbl?.text {
selectedTextLabels[indexPath] = text
}
}
}
print("\(selectedTextLabels) outside")
}
最佳答案
因为var selectedTextLabels = [NSIndexPath: String]()
是一本字典,您正试图检索其中的String
部分,即values
您可以通过以下方式获取它们:
let values = Array(selectedTextLabels.values)