【问题标题】:Click event not working flex单击事件不起作用
【发布时间】:2011-04-26 06:06:36
【问题描述】:

我有一个作为数组列表作为数据提供者的列表。它有一个内联项渲染器,它有图像控制。点击事件对图片 ctrl 不起作用。代码如下所示

        <s:ArrayList id="allActionsArrList">
        <fx:Object click="showList('Portlet')" source="@Embed('images/bpc1.jpg')" />
        <fx:Object click="showList('Pages')" source="@Embed('images/Tab.png')"  />
        <fx:Object click="smsClick()" source="@Embed('images/launchpad_tel.png')"  />
        <fx:Object click="logoutImg_clickHandler(event)" source="@Embed('images/logoutS.swf')"  />
    </s:ArrayList>
        <s:List id="actionStripList" bottom="0" width="100%" borderColor="black"
        borderVisible="true" contentBackgroundAlpha="0" dataProvider="{allActionsArrList}"
        useVirtualLayout="false">
    <s:layout>
        <s:TileLayout/>
    </s:layout>
    <s:itemRenderer>
        <fx:Component>
            <s:ItemRenderer width="100%" height="40">
                <mx:Image buttonMode="true" horizontalCenter="0"
                                                  width="40" height="40" source="{data.source}" click="{data.click}"/>
            </s:ItemRenderer>
        </fx:Component>
    </s:itemRenderer>
</s:List>

任何想法。提前致谢!

【问题讨论】:

    标签: apache-flex flex3 flex4


    【解决方案1】:

    1.你可以这样做:

    <fx:Object clickHandler="{showList}" clickParams="{['Portlet']}" source="@Embed('images/bpc1.jpg')" />
    <fx:Object clickHandler="{showList}" clickParams="{['Pages']}" source="@Embed('images/Tab.png')"  />
    <fx:Object clickHandler="{smsClick}" clickParams="{[]}" source="@Embed('images/launchpad_tel.png')"  />
    <fx:Object clickHandler="{logoutImg_clickHandler}" clickParams="{[]}" source="@Embed('images/logoutS.swf')"/>
    
    <mx:Image buttonMode="true" horizontalCenter="0" width="40" height="40" source="{data.source}" click="data.clickHandler.apply(this, data.clickParams)"/>
    

    在这里你可能应该照顾this对象(info
    但我使用了第二种变体。

    2.另一个变体是为您的对象项目定义一些属性(例如id)。然后你可以在你的内联 itemRenderer 中使用switch 语句,并根据data.id 调用不同的监听器。

    【讨论】:

    • 图像组件是什么意思我已经在那里使用了图像控件。谢谢回复
    • @Naveen 非常抱歉,我太不专心了......我已经更新了我的答案
    • 嘿,是的,我也做了你在第二个变体中提到的同样的事情,这很有效。非常感谢你
    猜你喜欢
    • 1970-01-01
    • 2018-11-11
    • 1970-01-01
    • 2018-09-18
    • 2014-09-26
    • 1970-01-01
    • 2017-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多