Flex TileList自定义间距和theme样式

唯一的解决办法就是重写TileList组件中drawSelectionIndicatordrawHighlightIndicator


代码如下:

/**
* Author Dante
* Email:rubbish86630@yahoo.com.cn
* CreatedTime:2009.04.13
* Description:
* 该组件实现选中和划过theme样式,并且添加间距
* **/
package myLib {

import flash.display.Graphics;
import flash.display.Sprite;

import mx.controls.TileList;
import mx.controls.listClasses.IListItemRenderer;
public class MyTileList extends TileList {

[Bindable]
private var _verticalGap:Number = 0;

[Bindable]
private var _horizontalGap:Number = 0;

public function MyTileList() {
super();
}
/**
* 重写鼠标划过高亮
* @indicator:Sprite
* @x:Number
* @y:Number
* @width:Number
* @height:Number
* @color:uint
* @itemRenderer:IListItemRenderer
* return void
* **/
override protected function drawHighlightIndicator(indicator:Sprite, x:Number, y:Number, width:Number, height:Number, color:uint, itemRenderer:IListItemRenderer):void {
//绘图
var g:Graphics = indicator.graphics;

g.clear();
g.beginFill(color);
//画椭圆
g.drawEllipse(0, 0, width - _horizontalGap, height - _verticalGap);
g.endFill();

indicator.x = x;
indicator.y = y;
}

/**
* 重写选中高亮
* @indicator:Sprite
* @x:Number
* @y:Number
* @width:Number
* @height:Number
* @color:uint
* @itemRenderer:IListItemRenderer
* return void
* **/
override protected function drawSelectionIndicator(indicator:Sprite, x:Number, y:Number, width:Number, height:Number, color:uint, itemRenderer:IListItemRenderer):void {
//绘图
var g:Graphics = indicator.graphics;

g.clear();
g.beginFill(color);
//画椭圆
g.drawEllipse(0, 0, width - _horizontalGap, height - _verticalGap);
g.endFill();

indicator.x = x;
indicator.y = y;
}

//=============================
// set and get
//=============================
public function set verticalGap(value:Number):void {
_verticalGap = value;
}

public function get verticalGap():Number {
return _verticalGap;
}

public function set horizontalGap(value:Number):void {
_horizontalGap = value;
}

public function get horizontalGap():Number {
return _horizontalGap;
}
}
}

(0)

相关推荐

  • Flex TileList自定义间距和theme样式

    唯一的解决办法就是重写TileList组件中drawSelectionIndicator 和drawHighlightIndicator . 复制代码 代码如下: /** * Author Dante * Email:rubbish86630@yahoo.com.cn * CreatedTime:2009.04.13 * Description: * 该组件实现选中和划过theme样式,并且添加间距 * **/ package myLib { import flash.display.Graph

  • Android中自定义水平进度条样式之黑色虚线

    以下内容给大家介绍Android中自定义水平进度条样式之黑色虚线,对代码实现方法感兴趣的朋友一起学习吧. 布局layout中使用: <ProgressBar android:id="@+id/progress_bar" style="?android:attr/progressBarStyleHorizontal" <!--必须设置为水平--> android:progressDrawable="@drawable/myprogress&

  • jQuery实现自定义checkbox和radio样式

    1,起因 最近在工作中要实现自定义式的radio样式,而我们通常使用的时默认的样式,因为自己实在想不到解决的方法,于是开始搜索,最终看到了不错的解决办法,可以完美解决我们遇到的问题. 2,原理 大家都知道在写结构的时候,radio或checkbox都会跟随label一起使用,label的for属性值和input的id值相同的情况下,点击label就可以选中input,这里正是利用label 来覆盖我们的input默认样式,通过给label添加背景图片(美化的checkbox或radio),也就是

  • IOS实现百度地图自定义大头针和气泡样式

    一.自定义大头针和气泡 // 根据anntation生成对应的View - (BMKAnnotationView *)mapView:(BMKMapView *)mapView viewForAnnotation:(id <BMKAnnotation>)annotation { NSString *AnnotationViewID = [NSString stringWithFormat:@"renameMark%d",i]; newAnnotation = [[BMKPi

  • Android 自定义Switch开关按钮的样式实例详解

    封面 GitHub传送门 1.写在前面 本文主要讲的是在Android原生Switch控件的基础上进行样式自定义,内容很简单,但是在实现的过程中还是遇到了一些问题,在此记录下来,希望对大家能够有所帮助,看下效果图: 自定义样式 2.自定义样式 2.1 原生样式 首先看下原生的效果(Android 7.1): 原生效果 布局文件如下: <Switch android:layout_width="wrap_content" android:layout_height="wr

  • WPF自定义Expander控件样式实现酷炫Style

    首先, 看一下效果图. 点我看视频教程 实现思路 1.PS处理两张选中得特效背景, 一张为主选择得效果图, 另外一张为次选择项得效果图. ![](//files.jb51.net/file_images/article/202201/2022128103603692.jpg) ![](//files.jb51.net/file_images/article/202201/2022128103615294.jpg) 图片资源定义 <!--静态资源--> <ImageBrush x:Key=

  • ExtJS自定义主题(theme)样式详解

    本文基于Ext JS 4.2.1版本UI组件基础学习ExtJS就是学习组件的使用.ExtJS4对框架进行了重构,其中最重要的就是形成了一个结构及层次分明的组件体系,由这些组件形成了Ext的控件.ExtJs4的组件体系中有将近100种组件,而这些组件又可以大致分为四大类,即容器类组件.工具栏及菜单栏组件.表单及元素组件.其他组件.theme主题ExtJs4引入了全新的主题系统,采用Sass和Compass技术,提供了标准的主题模板,通过对主题模板的简单定制就可以创造出丰富多彩的各种主题. Sass

  • android自定义弹出框样式的实现方法

    前言: 做项目时,感觉android自带的弹出框样式比较丑,很多应用都是自己做的弹出框,这里也试着自己做了一个. 废话不说先上图片: 实现机制 1.先自定义一个弹出框的样式 2.自己实现CustomDialog类,继承自Dialog,实现里面方法,在里面加载自定义样式的弹出框: 3.使用时,与使用Dialog一样 具体代码 dialog_normal_layout.xml样式文件 <?xml version="1.0" encoding="utf-8"?>

  • Javascript创建Silverlight Plugin以及自定义nonSilverlight和lowSilverlight样式

    默认情况下,生成的页面代码可能与下面的代码类似: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head&g

  • WPF自定义TreeView控件样式实现QQ联系人列表效果

    一.前言 TreeView这个控件对于我来说是用得比较多的,以前做的小聊天软件(好友列表).音乐播放器(播放列表).类库展示器(树形类结构)等都用的是TreeView,普通的TreeView并不能满足我们的需求.因此我们需要滴对TreeView进行改造.下面的内容将介绍仿QQ联系人TreeView样式及TreeView数据绑定方法. 二.TreeView仿QQ联系人列表 准确的说不是仿QQ联系人列表,这个TreeView样式作为组织架构来使用更好.废话不多说,先看效果:  2.1.基本思路 像这

随机推荐