[LayaAir 2.0]获取所有子对象以及嵌套子对象中的text属性该如何写

我写了一个自动翻译的方法,可以逐条翻译。现在为了更方便使用,我想翻译整个显示容器里所有带有text属性的对象,不管是button,list,label还是textfield。那么问题来了,我能否获取到这个容器所有子对象中带有text属性的对象?子对象有可能是嵌套了几层,里面还是有text属性,比如list这种的。

当然我现在已经写出来了一个版本,就是获取子对象里有没有text属性,有的话就加入一个全局数组中,没有的话就找下一个。如果子对象里面还有子对象,就继续调用这个方法来递归。现在的问题是递归会一直进行,无法跳出。当然我也想到另一个方法就是保存每个搜索过的对象的id或是hash值之类的,然后递归的时候判断要是已经搜索过了就跳过,直到没有新对象被搜索,说明所有子对象已经搜索完了。不过我觉得这种方法可能有点笨,有没有其他方法把一个容器里面所有带有text属性的对象集合起来。

Aar0n

赞同来自:

这个还是要遍历递归,然后返回,属于开发逻辑,方法无关笨不笨,先实现再优化,逐步摸索就出来了。

要回复问题请先

商务合作
商务合作