Flex 平铺背景图片

估计不少做Flex的初学者和我一样,寻找让Flex背景图片平铺显示方法。

但现在我要告诉你的是Flex本身没有提供这种方法,至少在Flex3上是没有提供的。

所以就要自己写代码来实现这种效果,其实很简单的。

 

下面是我在网上找到的一个方法,然后自己做了一点小小的修改。

并做一个简单的例子放上来,你可以点这里下载。

package
{  
    import flash.geom.Rectangle;  
  
    import mx.graphics.BitmapFill;  
    import mx.skins.ProgrammaticSkin;  
    import flash.text.StyleSheet;
  
    public class RepeatBackground extends ProgrammaticSkin {  
        public 
function RepeatBackground() {
        }

        override protected 
function updateDisplayList(w:Number, h:Number):void {  
            super.updateDisplayList(w,h);  
            
            graphics.clear();
            
var b:BitmapFill = new BitmapFill();  
            b.source 
= getStyle("backgroundImage");;  
            b.begin(graphics,
new Rectangle(0,0,w,h));  
            graphics.drawRect(
0,0,w,h);  
            b.end(graphics);  
        }  
    }

 

使用方法也很简单,只需要设置一下css就可以了

Application
{
    backgroundImage
: Embed(source="assets/bg1.gif"); 
    border-skin
:ClassReference("RepeatBackground");
}

 

 

附件下载

 

posted @ 2009-11-27 18:42  1901  阅读(6503)  评论(4编辑  收藏  举报