在一个设置裁切的容器层中添加一张图片,代码中设置容器层的高度变化怎么图片没有立即被裁切掉,而是缩放浏览器窗口后才会。。
还有一个就是貌似被裁切掉或者不显示在屏幕上的内容如果添加了touch事件,也可以被捕捉到。 就是点击裁切的区域也可以被捕捉到? 是这样的??
在一个设置裁切的容器层中添加一张图片,代码中设置容器层的高度变化怎么图片没有立即被裁切掉,而是缩放浏览器窗口后才会。。
还有一个就是貌似被裁切掉或者不显示在屏幕上的内容如果添加了touch事件,也可以被捕捉到。 就是点击裁切的区域也可以被捕捉到? 是这样的??
点击裁剪区域以外是不可以捕捉touch事件的吧,另外你代码里面设计容器的高度没有被立即裁剪,请问你的代码是?
var UILayer = cc.Layer.extend({
pp1:null,
pp2:null,
pp3:null,
pp4:null,
ctor: function () {
this._super();
this.init();
},
init: function () {
var size = cc.director.getWinSize();
var root = ccs.uiReader.widgetFromJsonFile(“res/page/pageView_1.ExportJson”);
this.addChild(root);
var p1 = ccui.helper.seekWidgetByName(root,“panel1”);
p1.height = 160;
p1.setAnchorPoint(cc.p(0,1));
var p2 = ccui.helper.seekWidgetByName(root,“panel2”);
p2.setAnchorPoint(cc.p(0,1));
var p3 = ccui.helper.seekWidgetByName(root,“panel3”);
p3.setAnchorPoint(cc.p(0,1));
var p4 = ccui.helper.seekWidgetByName(root,“panel4”);
p4.setAnchorPoint(cc.p(0,1));
addWidgetClickEvent(p1,null,this);
addWidgetClickEvent(p2,null,this);
addWidgetClickEvent(p3,null,this);
addWidgetClickEvent(p4,null,this);
this.pp1 = p1;
this.pp2 = p2;
this.pp3 = p3;
this.pp4 = p4;
this.sort();
},
sort: function () {
this.pp2.y = this.pp1.y - this.pp1.height - 10;
this.pp3.y = this.pp2.y - this.pp2.height - 10;
this.pp4.y = this.pp3.y - this.pp3.height - 10;
}
});
addWidgetClickEvent = function(dispatcher, listener, pthis) {
dispatcher.addTouchEventListener(function(sender, type) {
if (type === ccui.Widget.TOUCH_ENDED) {
this.pp1.height =this.pp2.height =this.pp3.height =this.pp4.height = 80;
sender.height = 160;
this.sort();
}
}, pthis);
};
可能是这样设置的方式不对,但是就是很奇怪。显示的区域和实际点击的区域不一样的,你试试看~
export是导出的资源
这是源文件,不懂是不是设置了锚点之后?
好的,收到
楼主使用的jsb版本是?
3.0 beta .
建议升级3.2
bug貌似是锚点的问题,修改锚点之后显示正常,但是touch事件就不会对了。。