首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flash / TileList组件

Flash / TileList组件
EN

Stack Overflow用户
提问于 2009-01-09 13:00:27
回答 1查看 2.8K关注 0票数 1

我有问题,希望有人能帮我

我有一个带有TileList的Flash项目

我需要将TileList中某些项目(并非全部)的背景更改为红色,另一些则更改为蓝色。

你知道怎么做吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2009-04-13 02:34:58

嗯,棘手的那个。

我试图用一种干净的方式解决这个问题,但是Flash不允许我这么容易地解决这个问题。其基本思想是为每个itemRenderer(ImageCell)设置一个ImageCell,或者任何其他必需的皮肤,而不是所有这些皮肤( tileList.setRendererStyle());

我以为可以轻松地访问ImageCell类(TileList的默认Cell ),但事实并非如此。我获得访问cellRenderer itemToCellRenderer方法的唯一方法,但作为参数传递的项来自ListEvent

我修改了文档中的示例来说明这个想法。此代码假设您有TileList组件,再加上库中具有以下链接的三个MovieClips符号: Star、BlueBg、RedBg Importfl.controls.;Importfl.controls.listClasses.;Importfl.data.;Importfl.events.;

代码语言:javascript
复制
var totalEntries:uint = 20;
var myTileList:TileList = new TileList();
myTileList.columnWidth = 125;
myTileList.rowHeight = 150;
myTileList.columnCount = 3;
myTileList.rowCount = 1;
myTileList.move(10,10);
addChild(myTileList);

for(var i:int=0; i<totalEntries; i++) {
    myTileList.addItem( { label:"star"+i, source:Star, scaleContent:false, index:i} ); 
}

myTileList.addEventListener(ListEvent.ITEM_ROLL_OVER, listItemOver);
function listItemOver(e:ListEvent):void {
    var imageCell:ImageCell = myTileList.itemToCellRenderer(e.item) as ImageCell;
    //e.index % 2 == 0 ? imageCell.setStyle('upSkin',BlueBg): imageCell.setStyle('upSkin',RedBg);
}

这会变得很混乱,即使它会起作用。我在分派ITEM_ROLL_OVER事件时遇到了问题,而且当组件被填充时,我不认为分配大量的事件,仅仅为了一些颜色是一个好主意。

Sooo...there 2在Flash中仍然是正确的

  1. 几乎没有人想要Flash组件中的默认行为。每个人都想要点小习惯。
  2. 我想,Flash中的“魔力”就在于找到“讨厌”的解决方案。

下面是对我有用的内容:注意,当我添加一个项时,我还会添加和索引属性,这样每个项都知道它的索引是什么。接下来,我让每个单元格的内容决定显示什么是正确的皮肤(这会创建依赖关系,因此应该有一种紧凑型的方式),所以我在星空MovieClip中添加了以下代码

代码语言:javascript
复制
import fl.controls.listClasses.ImageCell;

var cell:ImageCell = this.parent.parent.parent as ImageCell;
trace(cell.data.index);
if(cell.data.index %2 == 0) cell.setStyle('upSkin',BlueBg);
else cell.setStyle('upSkin',RedBg);

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/427971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档