Egret社区
3银子
现有需求是希望button设置enabled为false之后触摸不会返回数据,求指教。

我用的如下代码生成一整块组件:
this.listLoginReward.dataProvider = new eui.ArrayCollection(this.login);
this.listLoginReward.itemRenderer = ListLoginRewardSkin;

组件exml如下:
<e:Skin class="listLoginRewardSkin" xmlns:e="http://ns.egret.com/eui">
    <e:Button enabled="false" touchEnabled="false" >
        <e:Skin >e:Image /></e:Skin>
    </e:Button>
    <e:Image />   
    <e:Label />
</e:skin>

我将button设置为不可操作状态,然后如下给list设置触碰监听事件,发现点击之后依旧能返回数据:
this.listLoginReward.addEventListener( egret.TouchEvent.TOUCH_TAP, ()=>{
        console.log(this.listLoginReward.selectedItem.reward);
}, this );

最佳答案

查看完整内容

这种list_item。 item和item上面的按钮要处理不同的点击。点击区域有重复的。 建议只对listitem加touch事件。 然后自己hittest判断下是否item上的按钮被点击到了,自己分发事件
分享到 :
0 人收藏

3 个回复

倒序浏览
askforone  登堂入室 | 2017-4-18 15:48:29
这种list_item。 item和item上面的按钮要处理不同的点击。点击区域有重复的。

建议只对listitem加touch事件。 然后自己hittest判断下是否item上的按钮被点击到了,自己分发事件
yjtx  官方团队 | 2017-4-18 16:00:00
你只是禁止的按钮不可以点击,不是禁止的scroller,只要scroller没有禁止,他的child 都是属于的可点击范畴的
wyb815  圆转纯熟 | 2017-4-18 16:51:32
楼主再加个touchChildren=false就行了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部