我正在Swift 3.0中的一个项目中工作,我有一个循环可以给我一个对象的状态(在数组序列中给出一个布尔值)。我的要求是如果元素状态为“真”我想获得相关的索引路径,所以使用indexPath
我可以从我的原始数组中获取整个对象。因此,在一个循环内,我怎样才能得到这个呢?下面是我部分完成的代码。在评论中我已经说明了我想通过这个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]])
}
}
}
尝试更新的答案,并让我知道,如果您有任何困惑。 – Krunal
我的数组类型是NSArray。所以这不会工作 – danu
不要在Swift中使用NSArray,声明你的数组,正如我在最后一个示例块中所示。示例字符串数组:let selectedSongList = [String]()在这里分享你的数组声明,我会帮你将数组转换成Swift数组。 – Krunal