构建类cocos2d-x时出错 [英] Errors while building class cocos2d-x

查看:84
本文介绍了构建类cocos2d-x时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我添加了GraphicsScene.h类:

#pragma once

#include "cocos2d.h"

class GraphicsScene : public cocos2d::Layer
{
public:
    static cocos2d::Scene* createScene();
    virtual bool init();
    CREATE_FUNC(GraphicsScene);
};

然后

#include "GraphicsScene.h"

USING_NS_CC;

Scene* GraphicsScene::createScene()
{
    auto scene = Scene::create();
    auto layer = GraphicsScene::create();
   scene->addChild(layer);

    return scene;
}

bool GraphicsScene::init()
{
    if ( !Layer::init() )
    {
        return false;
    }

    auto sprite = Sprite::create("HelloWorld.png");
    sprite->setPosition(0, 0);

    this->addChild(sprite, 0);

    return true;
}

然后我将其添加到AppDelegate中,而不是通常的HelloWorld :: createScene():

Then I added in AppDelegate instead of usual HelloWorld::createScene():

auto scene = GraphicsScene::createScene();
    // run
director->runWithScene(scene);

我在Android.mk中添加了类的名称。

I added name of the class in Android.mk.

这些是错误

我做错了什么?

推荐答案

一切似乎都很好。

I猜猜您编辑了错误的Android.mk文件。请检查您正在编辑的 Android.mk 文件吗?

I guess you edited wrong Android.mk file. Please check what Android.mk file are you editing ?

proj.android 中的一个还是 proj.android-studio 中的一个?

The one in proj.android or the one in proj.android-studio?

使用-android-studio 标签进行编译时,您将在 proj.android中编译项目-studio ,而不是 proj.android

When compiling using --android-studio tag, you are compiling the project inside proj.android-studio, not proj.android.

cocos compile -p android --android-studio

您没有在 GraphicsScene.h 中使用包含保护。使用包含保护,可避免同一头文件被多次包含。

You're not using include guard in GraphicsScene.h. Use include guard to avoid the same header file being included multiple times.

编辑

静态关键字从 createScene GraphicsScene.cpp中的方法定义

remove static keyword from createScene method definition inside GraphicsScene.cpp

static Scene* GraphicsScene::createScene()
{
    auto scene = Scene::create();
    auto layer = GraphicsScene::create();
    scene->addChild(layer);
    return scene;
}

编辑2

Android.mk of proj.android-studio

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../../Classes/AppDelegate.cpp \
                   ../../../Classes/HelloWorldScene.cpp \
                   ../../Classes/GraphicsScene.cpp   --> Path is wrong for this file

因此请将其更改为 ../.。 /../ Classes / GraphicsScene.cpp

这篇关于构建类cocos2d-x时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆