我在 cocos2d-android 中创建了新类并添加了场景,但在主类中,在类名 Cannot instantiate the type Trr
中出现此错误,其中 Trr 是类的名称。
通过谷歌搜索,我发现错误是由于 Trr 是抽象类,无法直接实例化。有人可以帮我吗?
这是整个代码
**public abstract class Trr extends CCLayer{
public static CCScene scene()
{
CCScene scene = CCScene.node();
CCLayer layer = new GameL();
scene.addChild(layer);
return scene;
}
CCTextureAtlas atlas;
static final int kTagNode = 1;
static final int kTagGrossini = 2;
public void Trr() {
CGSize s = CCDirector.sharedDirector().winSize();
CCLabel label = CCLabel.makeLabel(title(), "DroidSans", 18);
label.setPosition(s.width / 2, s.height - 30);
addChild(label, 1);
CCMenuItemImage item1 = CCMenuItemImage.item("b1.png", "b2.png", this, "backCallback");
CCMenuItemImage item2 = CCMenuItemImage.item("r1.png", "r2.png", this, "restartCallback");
CCMenuItemImage item3 = CCMenuItemImage.item("f1.png", "f2.png", this, "nextCallback");
CCMenu menu = CCMenu.menu(item1, item2, item3);
menu.setPosition(0, 0);
item1.setPosition(s.width / 2 - 100, 30);
item2.setPosition(s.width / 2, 30);
item3.setPosition(s.width / 2 + 100, 30);
addChild(menu, 1);
}
public abstract String title();
}
**
MainActivity- Trr 的第二行,我遇到了错误。
CCScene scene = CCScene.node();
scene.addChild(new Trr(), -1);
CCDirector.sharedDirector().runWithScene(scene);
最佳答案
您不能创建抽象类的实例。要修复,您可以删除抽象修饰符,一切都应该正常工作。
关于java - 无法在 cocos2d 中实例化类型类名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17525926/