quick cocos2dx 2.2.5Plus中无解的问题

来源:互联网 发布:java jdk 编辑:程序博客网 时间:2024/06/06 19:29

quick cocos2dx中使用cocostudio布局,然后再使用了其中的UIScrollView,在UIScrollView中又有按钮的话,杯具就会发生了。

现象:

当uiScrollView中的Item超过可视范围以后,被裁剪掉的部分的button是可以被点击的,而且绑定按钮的接口

obj:addTouchEventListener(function(_sender, _event)        if _event == TOUCH_EVENT_ENDED then            print("touched close")            end        return false    end)

这个接口中无法取到pTouch的任何信息,所在无论如何也不能对这个控件进行判定是否在scrollview外面

从quick的touch体系来看,这个item肯定是scrollview的child,因此touch首先会被它响应,

widget的touch好像是当某个obj响应以后,就中断了,不再继续往传给父结点。

因此这个问题用ccs的控件本身是无法判定的,另外,对于ccs而已的控件,要判定是否在父控件也是比较麻烦的。

因此添加的时候的位置取出来永远都是那个位置。

如:将item1添加在0, 100位置,则取出来永远都是这个位置,无论它滚到了哪里.


若原来的css布局不变,只换ui.ListView来进行替换,则可以判断按钮是否在ListView外面,但是问题是这个ListView的层次必须在原来的ccs

布局的最顶层,若不是最后添加这个控件,则它又会被其他的控件盖住,这个时候无论是否对widget控件设置吞噬触摸。都不管用。

setTouchSwallowEnabled(false)

触摸依然被上导的ccs控件吞噬。

若将ListView放在最顶层,则原来的ccs层的touch事件又会被它给盖住(设计分辨率下尚可), 一旦分辨率变了,原来的触摸区域却不会变化,

最终结果就是要么ccs遮住ListView,要么ListView遮住ccs,不能和谐的共存,因此在设计的时候最好把顶层和最下面的滑动超出屏幕,暂时没有别的办法。

不晓得3.X有没有解决这个问题。


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 魅族手机太慢怎么办 魅蓝5信号不好怎么办 魅蓝数据网速慢怎么办 魅族联通网速慢怎么办 魅族手机wifi信号弱怎么办 魅蓝e2信号差怎么办 魅蓝e2gps信号弱怎么办 魅族网络信号差怎么办 魅族手机gps信号弱怎么办 魅族手机突然没有信号怎么办 魅族手机流量信号不好怎么办 魅族手机wifi信号差怎么办 魅族5s信号不好怎么办 魅族mx5的双击不亮屏怎么办 魅族mx5返回键失灵怎么办 电信苹果3g网速慢怎么办 魅蓝6开不了机怎么办 手机应用被锁了怎么办 魅族电池不耐用怎么办 魅族mx6现在很卡怎么办 魅族e2手机屏幕背景黑色怎么办 魅族x6手机锁了怎么办 360n5返回键失灵怎么办 360n5返回键不好用怎么办 魅族手机锁屏怎么办 魅族手机锁住了怎么办 手机己锁定怎么办魅族 魅蓝u10触屏没反应怎么办 魅蓝e2手机锁定怎么办 苹果手机声音键坏了怎么办 一加6的屏幕问题怎么办 魅蓝note6卡顿怎么办 苹果4s内屏坏了怎么办 魅族mx6一直重启怎么办 魅族充电慢了怎么办啊 笔记本玩游戏掉帧怎么办 psv玩游戏掉帧怎么办 ipad玩游戏掉帧怎么办 手机玩游戏严重掉帧怎么办 苹果7p掉电快怎么办 努比亚z11手机总是开关机怎么办