Monica 已解决:
if (e.type == Laya.Event.CLICK) {
if (e.target.name == "arrow") {
//Tree的开/关,当打开一个时,另一个关闭
var item:Cell = e.target.parent as Cell;
if (item.dataSource.isOpen == true) {
if (this.selectedIndex == -1) {
this.selectedIndex = index;
} else {
if (this.selectedIndex < index) {
this.listUI.typeTree.setItemState(this.selectedIndex, false);
this.selectedIndex = index - this.selectedNodes;
} else {
this.listUI.typeTree.setItemState(this.selectedIndex + Number(item.dataSource.nodes), false);
this.selectedIndex = index;
}
}
this.selectedNodes = Number(item.dataSource.nodes);
} else if (item.dataSource.isOpen == false) {
this.selectedIndex = -1;
this.selectedNodes = 0;
}
}
}
selectedNodes:当前选中的Item的子节点数
selectedIndex:当前选中的Item的位置