gpt4 book ai didi

android - Andengine动态壁纸中的空指针异常

转载 作者:太空狗 更新时间:2023-10-29 13:34:04 26 4
gpt4 key购买 nike

我正在使用 Andengine 动态壁纸扩展制作动态壁纸。问题是,当我尝试在 OnCreateScene 方法中附加 Sprite (背景图像)时,出现空指针异常。有人可以帮我解决这个问题吗?

以下是我的代码:-

@Override
public EngineOptions onCreateEngineOptions() {

this.mCamera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
EngineOptions engineOptions = new EngineOptions(false, ScreenOrientation.PORTRAIT_FIXED, new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), mCamera);
return engineOptions;

}

@Override
public void onCreateResources(
OnCreateResourcesCallback rsrCallback)
throws Exception {

BitmapTextureAtlasTextureRegionFactory.setAssetBasePath("gfx/");
background = new BitmapTextureAtlas(this.getTextureManager(), 480, 320);
backTR = BitmapTextureAtlasTextureRegionFactory.createFromAsset(background,this.getAssets(), "background_small.png", 0, 0);
background.load();

rsrCallback.onCreateResourcesFinished();
}

@Override
public void onCreateScene(OnCreateSceneCallback sceneCallback)
throws Exception {
// creating main scene
mMainScene = new Scene();
IBackground myBack = new Background(0.0f, 0.0f, 0.0f);
mMainScene.setBackground(myBack);

final Sprite bkground = new Sprite(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT, backTR, getVertexBufferObjectManager());
mMainScene.getLastChild().attachChild(bkground);

sceneCallback.onCreateSceneFinished(mMainScene);
}

在 mMainScene.getLastChild().attachChild(bkground) 线上,我得到一个空指针。堆栈跟踪已附加。

Stack Trace of Error

最佳答案

我找到了一种替代解决方案,即向墙纸添加 Sprite 背景。

使用 SpriteBackground 类:-

mMainScene.setBackground(new SpriteBackground(new Sprite(0, 0, backTR, this.getVertexBufferObjectManager())));

这解决了我之前得到的空指针。

关于android - Andengine动态壁纸中的空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12507042/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com