as3:sprite作为容器使用时,最好不要指定width,height
生活随笔
收集整理的這篇文章主要介紹了
as3:sprite作为容器使用时,最好不要指定width,height
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
官方解釋:
除 TextField 和 Video 對象以外,沒有內(nèi)容的顯示對象(如一個(gè)空的 Sprite)的高度為 0,即使您嘗試將 height 設(shè)置為其它值,也是這樣。
如果您設(shè)置了 height 屬性,則 scaleY 屬性會(huì)相應(yīng)調(diào)整(width類推)
?
也就是說,一個(gè)空的sprite,既使您設(shè)置了width,height也是沒用的(而且人為設(shè)置了反而會(huì)有負(fù)作用,見下面的代碼)
var _sprite:Sprite = new Sprite(); _sprite.width=100; _sprite.height=100; addChild(_sprite); trace(_sprite.width,_sprite.height);//0 0 _sprite.graphics.beginFill(0xff0000); _sprite.graphics.drawRect(0,0,400,300); _sprite.graphics.endFill(); trace(_sprite.width,_sprite.height);//這里仍然輸出0 0注意:這里人為指定了_sprite的width,height為100,但用trace時(shí),仍然輸出0,而且更惡劣的是,即使后面在_sprite里畫了一個(gè)400*300的紅色矩形,_sprite的寬高仍然為0,導(dǎo)致舞臺上啥也看不到!
?
如果把人為設(shè)定width,height的語句去掉:
var _sprite:Sprite = new Sprite(); //_sprite.width=100; //_sprite.height=100; addChild(_sprite); trace(_sprite.width,_sprite.height);//0 0 _sprite.graphics.beginFill(0xff0000); _sprite.graphics.drawRect(0,0,400,300); _sprite.graphics.endFill(); trace(_sprite.width,_sprite.height);//這里輸出400 300現(xiàn)在_sprite會(huì)自動(dòng)根據(jù)顯示內(nèi)容調(diào)整尺寸到400*300,紅色的矩形正常顯示出來了.
總結(jié)
以上是生活随笔為你收集整理的as3:sprite作为容器使用时,最好不要指定width,height的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MDOP套装之app-v安装使用及功能说
- 下一篇: RMAN 还原与恢复