首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么带libgdx引擎的助手在加载我的图像时会崩溃?

为什么带libgdx引擎的助手在加载我的图像时会崩溃?
EN

Stack Overflow用户
提问于 2017-10-24 00:25:32
回答 1查看 209关注 0票数 0

我用手机上的助手用libgdx引擎编写了这个程序。当我运行程序时,它几乎立即崩溃。我没有机会做很多事情,但我已经把问题缩小到了尝试加载自己的图片。当我删除/禁用代码"Texture(Gdx.files.internal("button_center.png"));“时,程序能够运行。另一个映像是在启动项目时预先加载的,没有出现任何问题。我尝试将我的图像移到相同的文件夹中,然后刷新构建,但是应用程序仍然崩溃。

下面是代码:

代码语言:javascript
复制
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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-24 01:31:07

通过谷歌搜索“引起: java.io.IOException:无法只加载像素图8位”,我发现由于某种原因,它在加载16位png图像时遇到了问题。我不知道如何将其转换为8位图像,所以我去吃午餐,并将文件扩展名交换为gif。该应用程序现在运行良好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46900393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档