添加迭代以循环AS3

时间:2014-10-16 20:38:27

标签: actionscript-3

嗨,简单的事情让我烦恼,我想要一些帮助!

    function highlight(textField:TextField):void
    {
        var l:int = textField.text.length

            for(var i:int = 0; i < l; i++)
                if (!highlightChar(textField, i))
                    l++;

    }

这会循环一个字符串,在角色后面添加一个框以显示荧光笔效果。一些字符失败(边界框为空,假设这些是返回等),并且在示例中我正在看它返回false 5次,并且框是5个字符短。我试图添加另一个迭代,当它无法继续另外5个字符,但这个循环永远不会停止。

还有另一种方法吗?

1 个答案:

答案 0 :(得分:0)

Hacky解决方案 - 收集失败计数,然后在第一个完成后再做一个循环修复它

        if(fails > 0)
            for(var f:int = i; f < fails + i; f++){
                var box:Shape = highlightChar(textField, f);
                if(box) boxes.addChild(box)
            }