我用手机上的助手用libgdx引擎编写了这个程序。当我运行程序时,它几乎立即崩溃。我没有机会做很多事情,但我已经把问题缩小到了尝试加载自己的图片。当我删除/禁用代码"Texture(Gdx.files.internal("button_center.png"));“时,程序能够运行。另一个映像是在启动项目时预先加载的,没有出现任何问题。我尝试将我的图像移到相同的文件夹中,然后刷新构建,但是应用程序仍然崩溃。
下面是代码:
package pavlov.murderdoggyalpha;
import com.badlogic.gdx.*;
import com.badlogic.gdx.graphics.*;
import com.badlogic.gdx.graphics.g2d.*;
import pavlov.murderdoggyalpha.*;
public class MyGdxGame implements ApplicationListener
{
Texture texture;
Texture butDownLeft;
Texture butLeft;
Texture butUpLeft;
Texture butDown;
Texture butCenter;
Texture butUp;
Texture butDownRight;
Texture butRight;
Texture butUpRight;
SpriteBatch batch;
int touchX;
int touchY;
@Override
public void create()
{
texture = new Texture(Gdx.files.internal("android.jpg"));
butCenter = new Texture(Gdx.files.internal("button_center.png"));
batch = new SpriteBatch();
}
@Override
public void render()
{
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
batch.draw(texture, touchX, touchY,
Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
if (Gdx.input.justTouched());
{
touchX = Gdx.input.getX();
touchY = Gdx.input.getY();
}
batch.end();
}
@Override
public void dispose()
{
}
@Override
public void resize(int width, int height)
{
}
@Override
public void pause()
{
}
@Override
public void resume()
{
}
}我相信这是错误日志。我提前道歉,我是新手。
这一点在我看来尤为突出:
原因: java.io.IOException:无法仅加载像素映射8位。
剩下的是:。
AndroidRuntime致命例外: GLThread 30571 10-23 19:48:59.061 3786 4066 E AndroidRuntime Process: pavlov.murderdoggyalphaPID: 3786 10-23 19:48:59.061 3786 4066 E AndroidRuntime 4066 com.badlogic.gdx.utils.GdxRuntimeException: load文件: button_center.png 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.utils.GdxRuntimeException 10-23 19:48:59.061 3786 4066 E AndroidRuntimecom.badlogic.gdx.graphics.glutils.FileTextureData.prepare(FileTextureData.java:64) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.load(Texture.java:130) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.(Texture.java:121) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.(Texture.java:100) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.(Texture.java:92) 10-23 19:48: 48:59.061 3786 4066 E pavlov.murderdoggyalpha.MyGdxGame$0$debug.create(MyGdxGame.java:35) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at pavlov.murderdoggyalpha.MyGdxGame.create(MyGdxGame.java) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.backends.android.AndroidGraphics.onSurfaceChanged(AndroidGraphics.java:236) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1519) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240) 10-23 19:48:59.061 3786 4066 E由: com.badlogic.gdx.graphics.g2d.Gdx2DPixmap.(Gdx2DPixmap.java:57) 10-23 19:48:59.061 3786 4066 E AndroidRuntime : java.io.IOException: 48:59.061 3786 4066 E AndroidRuntime : com.badlogic引起的java.io.IOException:无法加载像素图8位.gdx.graphics.Pixmap.(Pixmap.java:138) 10-23 19:48:59.061 3786 4066 E AndroidRuntime . 10多10-23 19:48:59.061 3786 4066 E AndroidRuntime致命例外: GLThread 30571 10-23 19:48:59.061 3786 4066 E AndroidRuntime Process: pavlov.murderdoggyalpha,PID: 3786 10-23 19:48:59.061 3786 4066 E AndroidRuntime 4066 com.badlogic.gdx.utils.GdxRuntimeException: load文件: button_center.png 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.utils.GdxRuntimeException 10-23 19:48:59.061 3786 4066 E AndroidRuntimecom.badlogic.gdx.graphics.glutils.FileTextureData.prepare(FileTextureData.java:64) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.load(Texture.java:130) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.(Texture.java:121) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.(Texture.java:100) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.graphics.Texture.(Texture.java:92) 10-23 19:48: 48:59.061 3786 4066 E pavlov.murderdoggyalpha.MyGdxGame$0$debug.create(MyGdxGame.java:35) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at pavlov.murderdoggyalpha.MyGdxGame.create(MyGdxGame.java) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at com.badlogic.gdx.backends.android.AndroidGraphics.onSurfaceChanged(AndroidGraphics.java:236) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1519) 10-23 19:48:59.061 3786 4066 E AndroidRuntime at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240) 10-23 19:48:59.061 3786 4066 E由: com.badlogic.gdx.graphics.g2d.Gdx2DPixmap.(Gdx2DPixmap.java:57) 10-23 19:48:59.061 3786 4066 E AndroidRuntime : java.io.IOException: 48:59.061 3786 4066 E AndroidRuntime : com.badlogic引起的java.io.IOException:无法加载像素图8位.gdx.graphics.Pixmap.(Pixmap.java:138) 10-23 19:48:59.061 3786 4066 E AndroidRuntime . 10多10-2
发布于 2017-10-24 01:31:07
通过谷歌搜索“引起: java.io.IOException:无法只加载像素图8位”,我发现由于某种原因,它在加载16位png图像时遇到了问题。我不知道如何将其转换为8位图像,所以我去吃午餐,并将文件扩展名交换为gif。该应用程序现在运行良好。
https://stackoverflow.com/questions/46900393
复制相似问题