我有许多扑克牌精灵。他们在一个列表中,上面是一张父卡片,后面是一个孩子,那个孩子是另一个孩子的父母。
例如,当我单击堆中的第 4 个时,我希望它及其所有子项都位于顶部。我怎样才能做到这一点?
currentCard.parent.setChildIndex(currentCard, numChildren-1);
currentCard 是用户点击的卡片。
以上出现错误,提供的索引超出范围。
我有许多扑克牌精灵。他们在一个列表中,上面是一张父卡片,后面是一个孩子,那个孩子是另一个孩子的父母。
例如,当我单击堆中的第 4 个时,我希望它及其所有子项都位于顶部。我怎样才能做到这一点?
currentCard.parent.setChildIndex(currentCard, numChildren-1);
currentCard 是用户点击的卡片。
以上出现错误,提供的索引超出范围。
尝试:
currentCard.parent.setChildIndex(currentCard, currentCard.parent.numChildren-1);
numChildren
否则会提到this
。我不确定this
这里会出现什么,因为您只有那行代码,但如果不是,currentCard.parent
那么numChildren
很容易成为比有多少孩子更多的孩子currentCard.parent
,从而导致超出范围的错误。例如,如果this
有 17 个孩子并且currentCard.parent
有 5 个,那么这行代码意味着您将尝试访问显然超出范围的索引 16。