1
我有一個數組,其中包含UIViews(單元格),該數組開頭爲空。我定當一個功能是通過不同的陣列循環發射它的值:當我將一個元素插入數組時,數組索引超出範圍
cells = [cell0, cell1, cell2, cell3, cell4]
// Code in function ↓
var cellAnimationArray: [NPFCarouselCell] = []
for cell in self.cells {
if cell.frame == farLeftFrame {
cellAnimationArray.insert(cell, at: 0)
} else if cell.frame == leftFrame {
cellAnimationArray.insert(cell, at: 1)
} else if cell.frame == centerFrame {
cellAnimationArray.insert(cell, at: 2)
} else if cell.frame == rightFrame {
cellAnimationArray.insert(cell, at: 3)
} else if cell.frame == farRightFrame {
cellAnimationArray.insert(cell, at: 4)
} else {
print("Frame does not exist!")
print(cell.frame)
return
}
當我站上罰球線cellAnimationArray.insert(cell, at: 4)
,應用程序崩潰與:
fatal error: Array index out of range
爲什麼我會得到一個徹頭徹尾的索引錯誤,當我插入一個項目到數組中?
@tktsubota。我使用數組的方式我必須知道哪個元素是在哪裏。這就是爲什麼我使用插入。 –
您可以'在索引4處插入空數組。它將如何知道如何填充0 ... 3? – Alexander
@AlexanderMomchliov。問題是,例如,索引3未分配,因此索引4不存在? –