出于某种原因,尽管importedChar.numItems =2
,我的循环仅执行一次
After Effects项目从1而不是0开始,所以我使用x=1
,这是我得到的
for(x=1; x < importedChar.numItems; x++) {
if (importedChar.item(x) instanceof CompItem) {
//Add imported Char to Main Comp
var newObj = null;
var newObj = myComp.layers.add(importedChar.item(x))
//Move Layer under null
newObj.moveAfter(newNull);
//Parent to Null
newObj.parent = newNull;
}
}
如果第一项是合成,则运行良好,但如果是第二项,则退出循环
最佳答案
您需要使用<=
而不是<
使其运行两次。
编辑:或者,使用for(x=0; x < importedChar.numItems; x++) {
,然后在需要使用时使用x+1
,但是在可以避免这种情况的情况下,最好使用<=
。
当您需要访问索引和有意义的值时(例如,打印出对人类友好的错误消息),通常会出现您希望使用替代方法的情况