Bog*_*nov 8 select uitableview ios swift deselect
这是代码:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let selectedItem = items.objectAtIndex(indexPath.row) as String
let itemId = selectedItem.componentsSeparatedByString("$%^")
//itemId[1] - Item Id
}
func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {
let selectedItem = items.objectAtIndex(indexPath.row) as String
let itemId = selectedItem.componentsSeparatedByString("$%^")
//itemId[1] - Item Id
}
Run Code Online (Sandbox Code Playgroud)
如何在数组或字符串或其他东西中添加项目ID"?例如,当您选择行0,1,4,5时,您在"Array或String"中添加了不同的Item Ids,然后当我想取消选择它们时,如何从取消选择的indexPath.row中取消选择精确的Item Id并查找它"在数组或字符串或其他东西......"并删除它?如果您有任何问题请在评论中提出我的英语,我会解释是否可以
Nat*_*ook 23
您可以通过向Dictionary表视图控制器添加属性来完成此操作:
class ViewController : UITableViewController {
var selectedItems: [String: Bool] = [:]
// ...
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let selectedItem = items.objectAtIndex(indexPath.row) as String
let itemId = selectedItem.componentsSeparatedByString("$%^")
// add to self.selectedItems
selectedItems[itemId[1]] = true
}
func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {
let selectedItem = items.objectAtIndex(indexPath.row) as String
let itemId = selectedItem.componentsSeparatedByString("$%^")
// remove from self.selectedItems
selectedItems[itemId[1]] = nil
}
// can access the items as self.selectedItems.keys
func doSomething() {
for item in selectedItems.keys {
println(item)
}
}
}
Run Code Online (Sandbox Code Playgroud)
对于Swift 3.0,请使用
override func tableView(_ tableView: UITableView, didSelectRowAt
indexPath: IndexPath){
//your code...
}
Run Code Online (Sandbox Code Playgroud)