如题 用cocostudio 做了个ui 我怎么能像button 一样 侦听到 图片 层容器 得到图片的点击 began move end
ImageView* image = static_cast<ImageView*>(Helper::seekWidgetByName(_layout, m_uiConfig.GetStr(i,3)));
image->addTouchEventListener(CC_CALLBACK_2(UIBase::PanleTouchEvent,this));
void UIMain::PanleTouchEvent(Ref* pSender, cocos2d::ui::Widget::TouchEventType type)
{
ImageView* panle = (ImageView*)pSender;
std::string name = panle->getName();
switch (type)
{
case cocos2d::ui::Widget::TouchEventType::BEGAN:
{
CCLOG(“panle on touch”);
}
break;
case cocos2d::ui::Widget::TouchEventType::MOVED:
break;
case cocos2d::ui::Widget::TouchEventType::ENDED:
break;
case cocos2d::ui::Widget::TouchEventType::CANCELED:
break;
default:
break;
}
}
没有任何反应啊
检查下是不是
1.没开启交互。
2.控件被挡住。
Button* button = static_cast<Button*>(Helper::seekWidgetByName(_layout, m_uiConfig.GetStr(i,3)));
button->addTouchEventListener(CC_CALLBACK_2(UIBase::ButtonTouchEvent,this));
void UIMain::ButtonTouchEvent(Ref* pSender, cocos2d::ui::Widget::TouchEventType type)
{
ImageView* panle = (ImageView*)pSender;
std::string name = panle->getName();
switch (type)
{
case cocos2d::ui::Widget::TouchEventType::BEGAN:
{
CCLOG(“panle on touch”);
}
break;
case cocos2d::ui::Widget::TouchEventType::MOVED:
break;
case cocos2d::ui::Widget::TouchEventType::ENDED:
break;
case cocos2d::ui::Widget::TouchEventType::CANCELED:
break;
default:
break;
}
}
这个是button的 没有问题
两个侦听可以吗
TouchEnabled设置了吗
这事cocostudio ui 里面的一张图片 换图 m_ImageViewList"Imgae_icons"]->loadTexture(“ui/Main_menu_0/Mianmenu/aa.png”);
Leadgame.exe!cocos2d::ui::ImageView::loadTexture(const std::basic_string<char,std::char_traits,std::allocator > & fileName, cocos2d::ui::Widget::TextureResType texType) Line 122 C++
奔溃在这里
:901:
麻烦:
1.尽量码出编辑器给的所有信息。
2.查查错误码
解决了 vs 的问题 路径复制的不行 手动打的就可以了