zoukankan      html  css  js  c++  java
  • cocos2d-x 2.1.2 bug发现

    1.在做屏蔽触摸时发现

    extensions中的CCScrollView类

    void CCScrollView::registerWithTouchDispatcher()
    {
    CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, false);
    }
    应该改成
    void CCScrollView::registerWithTouchDispatcher()
    {
    CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, getTouchPriority(), false);
    }

    2.tile map 不支持获取折线点

    CCTMXXMLParser.cpp
    Line 677
    else if (elementName == "polyline")
        {
            // find parent object's dict and add polyline-points to it
            // CCTMXObjectGroup* objectGroup = (CCTMXObjectGroup*)m_pObjectGroups->lastObject();
            // CCDictionary* dict = (CCDictionary*)objectGroup->getObjects()->lastObject();
            // TODO: dict->setObject:[attributeDict objectForKey:@"points"] forKey:@"polylinePoints"];
            // find parent object's dict and add polygon-points to it
            CCTMXObjectGroup* objectGroup = (CCTMXObjectGroup*)m_pObjectGroups->lastObject();
            CCDictionary* dict = (CCDictionary*)objectGroup->getObjects()->lastObject();
    
            // get points value string
            const char* value = valueForKey("points", attributeDict);
            if(value)
            {
                CCArray* pPointsArray = new CCArray;
                // parse points string into a space-separated set of points
                stringstream pointsStream(value);
                string pointPair;
                while(std::getline(pointsStream, pointPair, ' '))
                {
                    // parse each point combo into a comma-separated x,y point
                    stringstream pointStream(pointPair);
                    string xStr,yStr;
                    char buffer[32] = {0};
                    CCDictionary* pPointDict = new CCDictionary;
                    // set x
                    if(std::getline(pointStream, xStr, ','))
                    {
                        int x = atoi(xStr.c_str()) + (int)objectGroup->getPositionOffset().x;
                        sprintf(buffer, "%d", x);
                        CCString* pStr = new CCString(buffer);
                        pStr->autorelease();
                        pPointDict->setObject(pStr, "x");
                    }
                    // set y
                    if(std::getline(pointStream, yStr, ','))
                    {
                        int y = atoi(yStr.c_str()) + (int)objectGroup->getPositionOffset().y;
                        sprintf(buffer, "%d", y);
                        CCString* pStr = new CCString(buffer);
                        pStr->autorelease();
                        pPointDict->setObject(pStr, "y");
                    }
                    // add to points array
                    pPointsArray->addObject(pPointDict);
                    pPointDict->release();
                }
                dict->setObject(pPointsArray, "points");
                pPointsArray->release();
            }
        }

    3.编辑器的UISlider在程序加载初始化时会产生一个内存泄露,cocos2dx version 2.2.1

    在GUIReader.cpp的WidgetPropertiesReader0300::setPropsForSliderFromJsonDictionary方法的最后一行加上CC_SAFE_DELETE(progressBarDic);
  • 相关阅读:
    hdfs java.io.IOException: Mkdirs failed to create
    Linux文件权限授予
    插入排序
    Oracle中怎样设置表中的主键id递增
    单链表中是否有环之java实现
    excel 单元格的锁定 以及 JXL的实现方式
    用POI的HSSF来控制EXCEL的研究
    Oracle Job 语法和时间间隔的设定(转)
    您的JAVA代码安全吗?(转)
    Jdom 解析 XML【转】
  • 原文地址:https://www.cnblogs.com/hewei2012/p/3398840.html
Copyright © 2011-2022 走看看