实现flex中实现图片平铺

  在网页中实现一个图片平铺功能比较简单,只需要设置css样式就可以了。而在Flex中要实现图片的平铺的话,就不那么容易了,具体实现如下:

    第一步:设置样式。在mxml页面中设置如下样式。其中,et.RepeatBackground就是下一步需要实现的class

    .menuBackground{ background-image:Embed("./assets/image/toolbar_bg.png"); border-skin:ClassReference("et.RepeatBackground"); }

    第二步:写程序用图片填充一块区域,具体代码为:

   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); } }

   方法就是从ProgrammaticSkin中继承一个Class,然后重写updateDisplayList方法。

你可能感兴趣的:(flex/RIA)