【发布时间】:2017-10-03 17:16:27
【问题描述】:
我在 Swift 3.0 的一个项目中工作,我有一个循环,可以为我提供对象的状态(在数组序列中提供布尔值)。我的要求是,如果元素状态为“真”,我想获取它的相关索引路径,因此使用 indexPath 我可以从原始数组中获取整个对象。那么在一个循环中我怎么能得到它呢?我部分完成的代码如下。在评论中我已经说明了我想在哪里传递这个indexPath。
func tapFunction(sender: UIButton) {
// This gives me the selected indexPath
print("ID :",sender.accessibilityIdentifier!)
if let rowIndexString = sender.accessibilityIdentifier, let rowIndex = Int(rowIndexString) {
self.sateOfNewSongArray[rowIndex] = !self.sateOfNewSongArray[rowIndex]
}
sender.isSelected = !sender.isSelected
for (element) in self.sateOfNewSongArray {
//This is where I wants to pass the rowIndex that became true
if element == true {
selectedSongList.addingObjects(from: [songList[rowIndex]])
}
}
}
【问题讨论】:
-
尝试更新答案,如果您有任何困惑,请告诉我。
-
我的数组类型是 NSArray。所以这行不通
-
不要在 Swift 中使用 NSArray,声明你的数组,就像我在上一个示例块中展示的那样。示例字符串数组: let selectedSongList = [String]() 在此处分享您的数组声明,我会帮助您将数组转换为 Swift 数组。
标签: ios arrays swift xcode indexpath