Flex List在每行数据之间加上虚线
发布时间:2020-12-15 04:19:26 所属栏目:百科 来源:网络整理
导读:重写List组件中的drawRowBackground方法: package cn.com.common{import flash.display.Shape;import flash.display.Sprite;import mx.controls.List;public class List_CD extends List{public function List_CD(){super();}override protected function d
重写List组件中的drawRowBackground方法: package cn.com.common { import flash.display.Shape; import flash.display.Sprite; import mx.controls.List; public class List_CD extends List { public function List_CD() { super(); } override protected function drawRowBackground(s:Sprite,rowIndex:int,y:Number,height:Number,color:uint,dataIndex:int):void { super.drawRowBackground(s,rowIndex,y,height,color,dataIndex); var bg:Shape=Shape(s.getChildAt(rowIndex)); //此外为了显示虚线~使用一个while来循环来模拟虚线效果~ var p:Number=0; bg.graphics.lineStyle(1,0xCCCCCC); while (p < listContent.width) { bg.graphics.moveTo(p,height - 1); bg.graphics.lineTo(p + 4,height - 1); p+=6; } } } }测试主程序: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" xmlns:common="cn.com.common.*"> <s:layout> <s:BasicLayout/> </s:layout> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <common:List_CD alternatingItemColors="0xFFFFFF" rowHeight="25" labelField="label" left="10" top="10" right="10" bottom="10"> <s:ArrayList> <fx:Object label="路网指标一" flag="net1"/> <fx:Object label="路网指标二" flag="net2"/> <fx:Object label="线路指标一" flag="line1"/> <fx:Object label="线路指标二" flag="line2"/> <fx:Object label="车站指标一" flag="sta1"/> <fx:Object label="车站指标二" flag="sta2"/> </s:ArrayList> </common:List_CD> </s:Application> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |