cocos2d-x 3.2 关闭按钮点击立马销毁自己报错
cocos2d-x 3.2 Button点击事件里调用移除当前层报错
http://www.th7.cn/program/ios/201408/271227.shtml
诡异的错误,点击关闭按钮,居然进入
void Widget::onTouchEnded(Touch *touch, Event *unusedEvent)
两次,第二次报错。
修改下这个函数:调换一下位置就行了
void Widget::releaseUpEvent()
{
if (_touchEventListener && _touchEventSelector)
{
(_touchEventListener->*_touchEventSelector)(this, TOUCH_EVENT_ENDED);
}
if (_touchEventCallback) {
_touchEventCallback(this, TouchEventType::ENDED);
}
}
ShopPanel类:
#include "ShopPanel.h"
#include "ui/CocosGUI.h"
#include "Global.h" using namespace CocosDenshion;
using namespace cocos2d;
using namespace ui; ShopPanel::ShopPanel()
{ }
ShopPanel::~ShopPanel()
{ }
bool ShopPanel::init()
{
if (!Node::init())
{
return false;
}
auto s = Director::getInstance()->getWinSize();
Layout* la = static_cast<Layout*>(cocostudio::GUIReader::getInstance()->widgetFromJsonFile("ui/shopPanel.json"));
this->addChild(la); closeBtn = static_cast<Button*>(Helper::seekWidgetByName(la, "closeBtn"));
closeBtn->addTouchEventListener(CC_CALLBACK_2(ShopPanel::closeEvent, this)); return true;
}
void ShopPanel::open(Node* parent)
{
if (parent != nullptr && !isopen)
{
isopen = true;
parent->addChild(this);
this->setScale();
ScaleTo *scale1 = ScaleTo::create(0.2f, 1.0f);
EaseBackOut *tween = EaseBackOut::create(scale1);
this->runAction(tween); }
}
void ShopPanel::close()
{
if (isopen){
isopen = false;
this->removeFromParent();
}
}
void ShopPanel::closeEvent(Ref *pSender, Widget::TouchEventType type)
{
switch (type)
{
case Widget::TouchEventType::ENDED:
this->close();
break;
default:
break;
}
}
void ShopPanel::onExit()
{
Node::onExit();
}
调用打开函数:
void FirstScene::openShop(Ref *pSender, Widget::TouchEventType type)
{
switch (type)
{
case Widget::TouchEventType::ENDED:
ShopPanel* shop = ShopPanel::create();
shop->open(this);
break;
}
}
cocos2d-x 3.2 关闭按钮点击立马销毁自己报错的更多相关文章
- Eric6 右键点击生产对话框代码报错
问题没有解决,属于菜鸟级别的孩子~~~~ 求助啊,求助!!!!!! 报告如下: Warning:An unhandled exception occurred. Please report the p ...
- weblogic公布的项目用途myeclipse正常启动,点击startWeblogic.cmd报错解决方案
今天在做项目中遇到的问题.使用weblogic公布的项目,使用myeclipse正常启动,但点击startWeblogic.cmd会报错.我提出了一个class not found.楚是什么问题.后来 ...
- selenium+python自动化88-批量操作循环点击报错:Element not found in the cache - perhaps the page has changed since it was looked up
前言 selenium定位一组元素,批量操作循环点击的时候会报错:Element not found in the cache - perhaps the page has changed since ...
- SharePoint 2013 点击"关注" 报错
现象: 点击"关注" 报错. 解决办法: 1.确保bin文件夹下的.dll版本与web.config一致. 2.设置user porfile权限. 2.重启iis 结果如下:
- 【GitLab】gitlab上配置webhook后,点击测试报错:Requests to the local network are not allowed
gitlab上配置webhook后,点击测试报错: Requests to the local network are not allowed 操作如下: 报错: 错误原因: gitlab 10.6 ...
- Vue项目中执行npm run dev 不报错也不显示点击的地址链接
问题描述: 输入npm run dev 没有报错也没有显示可以点击的地址链接,如下图: 解决方法: 具体配置: autoOpenBrowser默认为false,改为true.重新 npm run de ...
- FCKeditor编辑器第一次点击总是报错(上传图片) 之后就好了
错误: Failed to execute 'getRangeAt' on 'Selection': 0 is not a valid index. FCKeditor编辑器第一次点击总是报错(上 ...
- vscode点击ctrl键报错Request textDocument/definition failed.
现象 用vscode写java代码的时候突然出现,修复问题点击Ctrl时,输出窗口就打日志,报错Request textDocument/definition failed. 我百度唯一的有用线索就是 ...
- Java+Selenium 上传文件,点击选择“浏览文件”按钮,报错invalid argument
Java+Selenium 上传文件,点击选择"浏览文件"按钮,报错invalid argument 解决代码: Actions action=new Actions(driver ...
随机推荐
- Android----- 改变图标原有颜色 和 搜索框
本博客主要讲以下两点知识点 图标改变颜色:Drawable的变色,让Android也能有iOS那么方便的图片色调转换,就像同一个图标,但是有多个地方使用,并且颜色不一样,就可以用这个方法了. 搜索框: ...
- 新旧版ubuntu镜像免费下载
链接:https://pan.baidu.com/s/1hUNfiyA_Npj9QQ0vNLJ_Xw 密码:6k6i
- jq对页面元素进行排序
利用sort函数排序: var div = $('.media').toArray().sort(function(a,b){ return parseInt($(a).find('.info .pr ...
- Linux IPv6 地址配置
添加IPV6地址ip -6 addr add <ipv6address>/<prefixlength> dev <interface>ip -6 addr add ...
- JavaScript---事件监听
JavaScript的事件监听是通过addEventListener()来实现的 它算是事件绑定的第二种方式. 他的特别之处在于这种绑定事件的方法不会被同名事件覆盖. 看具体的demo <!DO ...
- Linux安装apue.3e(基于ubuntu16.0.4)
本菜刚刚学习UNIX高级编程,无奈搭建本书编程环境时遇到不少问题,参考了网上各路大神的解决办法,最终解决了问题. (1)下载源代码,可以去官网下载:http://apuebook.com/code3e ...
- 【html5】hashchange Event – 监测URL的hash变化
通过URL传值,在?后附加以=连接的键值对,各键值对间以&连接:也可以通过URL传递页面参数,在”#”后附加的方式.两者最大的一个 区别在于:后者不会发起请求,不会导致页面刷新.常见应用场景在 ...
- iOS笔记杂记
Google Mobile Ads SDK更新至7.2.1不能编译,添加依赖库QuartzCore.framework后正常编译 imageName会把image缓存到手机内存里,不适合大量图片浏览会 ...
- redis的list类型以及其操作
lists类型 给你个图;' lists类型以及操作List是一个链表结构,主要功能是push.pop.获取一个范围的所有值等等,操作中key理解为链表的名字.Redis的list类型其实就是每一个子 ...
- 2018.11.15 RF antenna impedance-matching
We have studied the impedance-matching of RF transmission line between the antenna and the RX / TX m ...