首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Libgdx MainMenuScreen

Libgdx MainMenuScreen
EN

Stack Overflow用户
提问于 2013-09-03 19:38:23
回答 6查看 1.5K关注 0票数 5

我正在尝试学习使用libgdx框架。就像libgdx网站上的教程(https://code.google.com/p/libgdx/wiki/ExtendedSimpleApp)所描述的那样,我尝试设置一个小的主菜单。我已经导入了所需的所有类,但是在第29行中总是有一个错误:"MainMenuScreen不能解析为类型“。以下是源代码:

代码语言:javascript
复制
package com.me.mygdxgame;

import java.awt.SplashScreen;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Game;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;



public class MyGdxGame implements ApplicationListener {
private OrthographicCamera camera;
private SpriteBatch batch;
private Texture texture;
private Sprite sprite;
private BitmapFont font;

    @Override
public void create() {      
    batch = new SpriteBatch();
    //Use LibGDX's default Arial font.
    font = new BitmapFont();
    this.setScreen(new MainMenuScreen(this));
}

@Override
public void dispose() {
    batch.dispose();
    texture.dispose();
}

@Override
public void render() {      
    Gdx.gl.glClearColor(1, 1, 1, 1);
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

    batch.setProjectionMatrix(camera.combined);
    batch.begin();
    sprite.draw(batch);
    batch.end();
}

@Override
public void resize(int width, int height) {
}

@Override
public void pause() {
}

@Override
public void resume() {
}

}

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-09-03 19:48:38

MainMenuScreen不是一个标准类,如果您在教程中进一步阅读了链接,您会看到他们创建了一个额外的类"MainMenuScreen",只需创建另一个名为"MainMenuScreen“的类,并在那里添加教程中的代码。

如果这是您第一次使用java,那么在使用一些外部库之前,您可能需要谷歌一些java教程来学习java和oop的基本知识;)

票数 10
EN

Stack Overflow用户

发布于 2013-10-03 18:55:12

您需要创建一个扩展libgdx游戏类的类。

代码语言:javascript
复制
public class MainClass extends Game

然后,在mainclass的创建方法中,您必须设置屏幕。

代码语言:javascript
复制
setScreen(new MainMenuScreen(this));

在您的mainmenuclass中,您必须实现libgdx的屏幕类。

代码语言:javascript
复制
public class MainMenuScreen implements Screen

你必须像这样做一个构造函数

代码语言:javascript
复制
public MainMenuScreen(Game game) {
    // TODO Auto-generated constructor stub
    this.game = game;
    camera = new OrthographicCamera();
    camera.setToOrtho(false, scrw, scrh);//scrw is your screen width,scrh is screen height
    camera.update();
            batch = new SpriteBatch();
    Gdx.input.setInputProcessor(MainMenuScreen.this);}

我想这会成功的..。

票数 2
EN

Stack Overflow用户

发布于 2015-05-27 15:59:44

要开始学习libGDX,请查看这个项目:https://github.com/edesdan/libgdx-playground。也许它能帮助你完成进入这个世界的第一步。

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

https://stackoverflow.com/questions/18600184

复制
相关文章

相似问题

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