Flex Accordion headerRenderer实现child收缩
用Accordion组件的时候发现,child展开之后再点击的时候没有相应.
然后习惯性的Google发现解决方法大致是自定义一个组件...
感觉为了一个小功能重写有点 杀鸡用牛刀的感觉.
于是仔细想了下,发现其实只需要指定header的itemRenderer即可:
上代码 headerRenderer="com.MyAccHeader"
MyAccHeader:
package com
{
import flash.events.MouseEvent;
import mx.controls.Alert;
import mx.containers.Accordion;
import mx.containers.accordionClasses.AccordionHeader;
public class MyAccHeader extends AccordionHeader
{
public function MyAccHeader()
{
super();
this.addEventListener(MouseEvent.CLICK,fun);
}
private function fun(evt:MouseEvent):void
{
(this.parent as Accordion).selectedIndex = (this.parent as Accordion).selectedIndex+1;
}
}
}
相关文档:
本帖最后由 flashyiyi 于 2009-2-22 23:18 编辑
最终我决定还是用“隐藏”这个不是很合适的词。mx_internal是一个自定义命名空间,至于“命名空间”到底是什么就不在这里说了。总之,当我们在代码头部写上:
use namespace mx_internal
(如果是.AS文件,需要手动import mx.core.mx_internal,注 ......
一、准备工作:
所需要的软件:
Eclipse 3.5.2 : http://d2u376ub0heus3.cloudfront.net/eclipse/downloads/drops/R-3.5.2-201002111343/eclipse-SDK-3.5.2-win32.zip
Eclipse 3.5汉化包:http://eclipse.stu.edu.tw/technology/babel/babel_language_packs/BabelLanguagePack-eclipse-zh_3.5.0.v20091121043401.zip ......
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="initApp()">
<mx:states>
<mx:State name="index">
<mx:RemoveChild target="{loginPanel}"/>
......
flex三种连级方式:
内联:<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="var codetxt:Text=new Text">
</mx:Application>
级联:<mx:Application xmlns:mx="http: ......
http://blog.csdn.net/xuyesheng/archive/2009/08/20/4467515.aspx
Flex
Builder3
注册码:
1377-4167-5844-4698-0048-5821—
最
好用的一个
1377-4168-2018-0771-2432-1495
1377-4760-3354-0772-2773-8996
1377-4165-2080-7265-7813-8901
1377-4964-5021-8182-2399-8235
LiveCycle Data Services
注册码 ......