我有一个Flash游戏,我有一个图片被设计成文本框的提示和文本框里面的相关文本,但文本框被图像隐藏。任何人都知道如何制作,以确保文本框保持最佳状态,或者我需要做的任何事情以防止这种情况发生?如何修复在AS3舞台上的重叠对象
0
A
回答
3
使用setChildIndex
肯定会工作,但是,我觉得不同的设计方法是你真正应该做的事情,除去对方回答头痛。
例如,在比赛中我可能有不同的层,比如:
backgroundLayer
gameLayer
interfaceLayer
那些3个雪碧层将被添加到该订单的阶段。然后,我会将显示对象添加到适当的图层。因此,我添加到backgroundLayer或gameLayer的任何东西总是会在interfaceLayer上的用户界面后面。
这可以让你不必担心分层不断。 setChildIndex
的答案将解决那个时候的问题,但是如果其他东西被添加到容器中,它将重叠您的文本框,这是我不认为你想要的。
这里有一个例子:
var backgroundLayer:Sprite = new Sprite;
var gameLayer:Sprite = new Sprite;
var interfaceLayer:Sprite = new Sprite;
addChild(backgroundLayer);
addChild(gameLayer);
addChild(interfaceLayer);
现在
,无论你增加interfaceLayer,将永远是物体的顶部,你添加到gameLayer或backgroundLayer。
因此,在您的文本框的情况下,只需将它添加到您的interfaceLayer和任何其他对象,你想要在它后面,你添加到gameLayer或backgroundLayer。
0
将显示对象添加到显示对象容器的顺序会影响它们的z顺序,换句话说就是前后顺序。最后添加的显示对象成为最前面的。因此,显示对象容器的子项的子索引对于重叠子项的绘制很重要。
如果你把图片和文字上相同的DisplayObjectContainer如MovieClip:
让我们说你的DisplayObjectContainer是MC。
而且你的文本框为TXT
请试试这个:
mc.setChildIndex(txt, mc.numChildren-1);
相关问题
- 1. 对象保留在AS3中的removeChild()之后的舞台上
- 2. as3在舞台上添加对象的动态索引更改
- 3. 用As3在舞台上的按钮移动对象
- 4. ActionScript 3.0对象在舞台上为空
- 5. AS3盘旋舞台
- 6. 这和舞台在AS3
- 7. 在AS3中访问舞台
- 8. 动态地将舞台上的MovieClip实例放在舞台上(AS3)
- 9. 处理舞台上的显示对象
- 10. AS3对象出现onClick鼠标在舞台上点击的位置
- 11. AS3可以添加对象到舞台的全局类
- 12. AS3舞台上无法访问MC
- 13. KineticJS在一个舞台上拖动对象导致在另一个舞台上移动对象
- 14. AS3 - 如何找到物体相对于舞台的位置?
- 15. 如何从doc类AS3的舞台上定位影片剪辑?
- 16. 如何查找舞台上所有类型的对象?
- 17. 如何修复重叠的div元素?
- 18. 如何修复HTML中的重叠框
- 19. 删除对象的实例如果它存在于舞台上
- 20. 如何使用as3将一个按钮添加到舞台上?
- 21. 如何引用AS3中的动态实例化对象? (在舞台上添加了Moviclip)
- 22. 更改已在舞台上的图像as3
- 23. 在代码中放置舞台上的对象?
- 24. Addchild - 从外部类没有出现在舞台上的对象
- 25. 如何修复AS3按钮?
- 26. AS3:ProgressEvent的主舞台监听器?
- 27. AS3:限制函数的舞台空间?
- 28. 在as3中重新创建舞台布局
- 29. 引用舞台内部的对象吗?
- 30. 如何在舞台上绘制RGBA点?
你能澄清你的意思是从“精灵层”的实现角度? – avorum 2013-04-07 00:28:48
Sprite是一个DisplayObject。所有DisplayObject都有一个显示列表,您可以添加/删除其他DisplayObject到/从。 – prototypical 2013-04-07 00:48:34
用一个例子更新了答案。 – prototypical 2013-04-07 00:53:16