从 UITableView Swift 3 中删除所选单元格下方的单元格

Posted

技术标签:

【中文标题】从 UITableView Swift 3 中删除所选单元格下方的单元格【英文标题】:Remove the cells below the selected one from the UITableView Swift 3 【发布时间】:2017-07-06 07:25:35 【问题描述】:

在这里,当从 UITableView 中选择特定行时,我试图在选定的一个数组之后删除剩余的对象。

这是我的示例数组:

var myArray = ["rahul","rahib","suhail","alex","siya"]

如果我选择myArray[2],则应删除"suhail" 之后的剩余元素,最终数组必须为["rahul","rahib","suhail"]

这是我的尝试,但它只删除了一个对象:

var selectedIndex = indexPath.row
myArray.remove(at: selectedIndex+1)

提前致谢!

【问题讨论】:

@PiyushPatel 此解决方案仅删除所选项目..无需删除所选项目。删除所选项目之后的项目。 ok 只需将您的数组从 let 更改为 var 相关:***.com/questions/25913844/… 【参考方案1】:

let 更改为varmyArray

var myArray = ["rahul","rahib","suhail","alex","siya"]

使用removeSubrange(_:) 方法从数组中删除剩余项

myArray.removeSubrange(indexPath.row..<myArray.count)

【讨论】:

【参考方案2】:

由于您的myArray 被声明为常量,因此您无法修改它。

改变

let myArray = ["rahul","rahib","suhail","alex","siya"]

var myArray = ["rahul","rahib","suhail","alex","siya"]

并照常删除对象。

var myArray = ["rahul","rahib","suhail","alex","siya"]
let selectedIndex = 3
for index in selectedIndex...myArray.count-1 
    myArray.removeLast()

print(myArray)

【讨论】:

【参考方案3】:

试试这个删除

    var myArray = ["rahul","rahib","suhail","alex","siya"]
    print(myArray)

    let selectedIndex = 2
    myArray.removeSubrange(selectedIndex..<myArray.count)

    print(myArray)

【讨论】:

以上是关于从 UITableView Swift 3 中删除所选单元格下方的单元格的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 3 中基于 UITableView 中的单元格选择删除文件

在 Swift 中从 UITableView 中删除一行?

如何在 Swift 中从 Core Data 中删除数据时删除 UITableView 行?

如何在 Swift / iOS 中从 UITableView 中删除行并从 UserDefaults 中更新数组

添加/删除 UITableView 选择到数组,复选标记在滚动时消失 - Swift

从 UITableView 中删除自定义视图