cocostudio2.3中制作的ListView列表和button按钮,在程序运行时列表不能滑动,也不能接收单元格的点击事件了,只有button按钮可以点击?这种情况怎么办?
额,事件被吞噬了?
设置一下触摸优先级
3.6引擎还能设置优先级吗?没看到这个方法?
dispatcher->addEventListenerWithFixedPriority(listener, _touchPriority);
第二个形参
我用代码创建的button就不会挡住ListView的点击事件,但是我用cocostudio做出来的放在ListView中就会挡住ListView的滑动事件。这是什么情况?
上代码。。。。。。。。。。。。。
工程50M左右,无法上传!请去百度云盘http://pan.baidu.com/s/1sjysHDb下载!
虽然我解决了这个问题,但是我没想出原因,先把代码贴给你
ps(输出结果不一致,是因为一个是click事件,一个是touch事件)
//手动创建button
for (int i = 0; i < 10; i++)
{
Widget *w = Widget::create();
w->setContentSize(Size(600.0f, 100.0f));
Button *btn = Button::create(“BaS31.png”, “BaS32.png”);
btn->setPosition(w->getContentSize() / 2.0f);
btn->addTouchEventListener(CC_CALLBACK_1(HelloWorld::buttonClickCallback, this));
w->addChild(btn);
l->pushBackCustomItem(btn->clone());
}
//编辑器创建button
for (int i = 0; i < 10; i++)
{
Node *n = CSLoader::createNode("ButtonItem.csb");
Widget *w = Widget::create();
w->setContentSize(Size(200.0f, 50.0f));
Button *btn = dynamic_cast<Button*>(n->getChildByName("Button_1"));
btn->setSwallowTouches(false);
btn->addClickEventListener(CC_CALLBACK_1(HelloWorld::buttonClickCallback, this));
w->addChild(n);
//w->setTouchEnabled(false);
//btn->setTouchEnabled(false);
l->pushBackCustomItem(btn->clone());
}
}