gpt4 book ai didi

swift 3 : Get Value from Array[Int] in UITableView

转载 作者:行者123 更新时间:2023-11-28 15:27:33 26 4
gpt4 key购买 nike

有时我有一个这样的数组 [1, 2, 3, 4] [1, 2, 4]

我想在动态数据中实现隐藏和显示 UITableViewCell。但是我在获取数组元素时遇到了问题。我正在使用 for 循环,但它似乎不起作用。在我的代码下面:

var dataChgSort = [ ["sort" : 0 , "chgSort" : [1, 2, 3, 4, 5] ] ,
["sort" : 1, "chgSort" : [1, 2, 3, 4, 5 ] ] ,
["sort" : 12, "chgSort" : [1, 2, 3, 4, 5] ] ,
["sort" : 2, "chgSort" : [1, 2, 3, 4, 5] ] ,
["sort" : 3, "chgSort" : [4, 5] ] ,
["sort" : 4, "chgSort" : [1, 3, 8, 4, 5] ] ,
["sort" : 8, "chgSort" : [3, 8] ] ,
["sort" : 5, "chgSort" : [1, 3, 4, 5] ] ,
["sort" : 6, "chgSort" : [1, 2, 3] ]
]
.....
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {

var height: CGFloat = 0

let dataRow = ((self.dataChgSort[index] as [String: Any] )["chgSort"] as! [Int]) /*Dinamic Array int [1, 2, 3] or [1,3] etc*/

self.chgSort = ?????

if indexPath.row == self.chgSort {
height = 0
} else {
height = super.tableView(tableView, heightForRowAt: indexPath)
}
return height
}

最佳答案

我的理解是,如果您的 dataRow 显示“[1, 2, 4]”,那么 tableview 将显示第 1、2 和 4 行的高度。下面是我检查是否 的解决方案indexPath.row 出现在所选数组中。

override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {

let dataRow = ((self.dataChgSort[index] as [String: Any] )["chgSort"] as! [Int]) /*Dinamic Array int [1, 2, 3] or [1,3] etc*/

if dataRow.containse(indexPath.row + 1) {
return super.tableView(tableView, heightForRowAt: indexPath)

}
return 0
}

关于 swift 3 : Get Value from Array[Int] in UITableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45028865/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com