2013-02-19 25 views

Trả lời

23

Để mang lại một DisplayObject để phía trước sau khi chèn chỉ cần sử dụng này:

stage.setChildIndex(displayObject, stage.getNumChildren()-1); 
+0

Cảm ơn bạn @stot. Các phương thức stage này giống với các phương thức Flash cũ btw. Đối với những người sử dụng Adobe Animate, đây là cú pháp, vì giai đoạn được gọi là: this.setChildIndex (my_movieclip, this.getNumChildren() - 1); ' – jck

+0

Trong phiên bản mới hơn getNumChildren không được chấp nhận. Bạn có thể gọi trực tiếp cho numChildren ngay bây giờ. Nguồn: http://createjs.com/docs/easeljs/classes/Container.html#method_getNumChildren – zozo

2

API Canvas has no built-in scene graph. Sau khi một cái gì đó được rút ra, thực tế là nó đã được rút ra bị lãng quên, và không có tài liệu tham khảo của đối tượng gắn liền với vải. Điều này có nghĩa rằng, nếu đối tượng thay đổi, toàn bộ canvas có thể cần được vẽ lại.

Vì vậy, nếu bạn cần đối tượng Hình dạng của bạn được vẽ trên đầu các đối tượng Đồ họa của bạn, chỉ cần vẽ Đồ họa trước khi bạn vẽ Hình dạng. Bạn sẽ cần phải vẽ lại hình dạng mỗi khi bạn vẽ lại đồ họa.

Bạn cũng có thể đặt cả hình dạng và đồ họa vào Container và sử dụng indices của vùng chứa để kiểm soát thứ tự hiển thị của đối tượng.


Sửa: Theo ghi nhận của @stot's answer, nó chỉ ra rằng các giai đoạn chính nó có thể được sử dụng để chỉ số đứa trẻ được quản lý. Điều này là do Stage mở rộng lớp Container và do đó thừa kế các phương thức của lớp đó.

+2

Thật vậy, setChildIndex, addChild, và addChildAt API này sẽ giúp bạn làm điều này. – Lanny

+0

có thể thiết lập chỉ mục của nó bằng cách sử dụng stage.setChildIndex (..) xem @stot answer – Glogo

Các vấn đề liên quan