2017-09-18 3 views
0

저는 libgdx에 익숙하지 않습니다. 이전 대학 프로젝트로 끝나고 새 프로젝트를 시작하면 Android 스튜디오 또는 IDEA에서 setScreen 메소드를 해결할 수 없습니다. 다른 것들도 정상적으로 작동합니다. 어떤 아이디어? 도움을 받기를 바랍니다. (절대적으로 명확한 프로젝트).setScreen() 메서드를 해결할 수 없습니다

+0

당신이 우리에게 주시는 코드를 보여줄 수 : 당신은 당신이 필요할 때마다 화면을 변경할 수 있습니다

public class Drop extends Game { public SpriteBatch batch; public BitmapFont font; public void create() { batch = new SpriteBatch(); //Use LibGDX's default Arial font. font = new BitmapFont(); this.setScreen(new MainMenuScreen(this)); } public void render() { super.render(); //important! } public void dispose() { batch.dispose(); font.dispose(); } } 

을 (https://github.com/libgdx/libgdx/wiki/Extending-the-simple-game에서 촬영) 이 오류는 구문 오류에서부터 누락 된 소스 파일에 이르기까지 다양합니다. – dfour

+0

그냥 비어있는 프로젝트입니다. 아무것도 더. – BlackRock

답변

0

LibGdx에서 프로젝트를 만들면 ApplicationListener을 구현하는 핵심 파일이 제공됩니다.

내가 모은 것은 Game 클래스를 사용하여 클래스를 Screen 클래스로 설정하는 것입니다.

ApplicationListener.

public class HelloWorld implements ApplicationListener { 
    private SpriteBatch batch; 
    private BitmapFont font; 

    @Override 
    public void create() {   
     batch = new SpriteBatch();  
     font = new BitmapFont(); 
     font.setColor(Color.RED); 
    } 

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

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

     batch.begin(); 
     font.draw(batch, "Hello World", 200, 200); 
     batch.end(); 
    } 

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

    @Override 
    public void pause() { 
    } 

    @Override 
    public void resume() { 
    } 
} 

당신이 계신 :

public class MainMenuScreen implements Screen { 

    final Drop game; 

    OrthographicCamera camera; 

    public MainMenuScreen(final Drop game) { 
     this.game = game; 

     camera = new OrthographicCamera(); 
     camera.setToOrtho(false, 800, 480); 

    } 


     //...Rest of class omitted for succinctness. 

}