Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我正在使用Libgdx构建一个手机游戏。有人能告诉我如何将屏幕设置为一个大小吗?_Java_Android_Libgdx - Fatal编程技术网

Java 我正在使用Libgdx构建一个手机游戏。有人能告诉我如何将屏幕设置为一个大小吗?

Java 我正在使用Libgdx构建一个手机游戏。有人能告诉我如何将屏幕设置为一个大小吗?,java,android,libgdx,Java,Android,Libgdx,包com.test.game import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Screen; import com.badlogic.gdx.graphics.Camera; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.OrthographicCamera; import com.badlogic.gdx.graphics.Texture;

包com.test.game

import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Screen;
import com.badlogic.gdx.graphics.Camera;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2;


public class Splash implements Screen {

    private Sprite splash;
    private SpriteBatch batch;
    private float height = 1920;
    private float width = 1080;
    private float aspectratio = width/height;



    @Override
    public void render(float delta){


        Gdx.gl.glClearColor(0,0,0,1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
        batch.begin();
        splash.draw(batch);
        batch.end();

    }

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

    }

    @Override
    public void show(){
        batch = new SpriteBatch();
        Texture splashTexture = new Texture("zeuswallpaperphone1.jpg");
        splash = new Sprite(splashTexture);
        //splash.setSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
        splash.rotate(90);
        splash.setPosition(Gdx.graphics.getWidth()/2 - splashTexture.getWidth()/2, Gdx.graphics.getHeight()/2 - splashTexture.getHeight()/2);

    }

    @Override
    public void hide(){

    }

    @Override
    public void pause(){

    }

    @Override
    public void resume(){

    }

    @Override
    public void dispose(){

    }

}
这是我游戏的初始屏幕。我试图让启动屏幕的图像,以调整不同的屏幕大小。有没有办法将屏幕设置为一个大小?我想将屏幕设置为1280 x 720的大小。这也会使触摸输入保持不变吗?我不明白为什么这在android中如此困难。我一直在网上搜索,试图找到一个解决办法。我也很抱歉,如果这个问题已经在另一个帖子中得到了回答。似乎这个问题的大多数答案都很古老。我一直未能找到我所遇到的问题的答案。我正在寻求任何帮助,所以请有人帮助我。我尝试过各种方法,但似乎都不管用。提前感谢您的帮助。我讨厌堆栈溢出使您键入一定数量的内容。这里有一些libgdx教程。所以如果有人能看一部然后再给我回电话那就太好了。我尝试过使用视口和正交摄影机,但当我运行游戏时,它不会调整。在iOS上,您只需设置屏幕大小,就可以在所有设备上使用。他们需要在android studio中使用它。似乎什么都没用。
这是我的密码。谢谢你的帮助。这太疯狂了,他们还想让我多打字。

我想你需要使用摄像头和视口:

OrthographicCamera hudCamera = new OrthographicCamera();
Viewport hudViewport = new ScreenViewport(hudCamera);

public void create {
    // Your code
    hudViewport.apply(true);
}

 public void render(float delta){
    Gdx.gl.glClearColor(0,0,0,1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
    batch.setProjectionMatrix(hudCamera.combined);
    batch.begin();
    splash.draw(batch);
    batch.end();
}

public void resize(int width, int height) {
    hudViewport.update(width, height);
    hudViewport.apply(true);
}

确保您在主方法中设置了正确的大小。

一位路人说:“我尝试了各种方法,但似乎没有任何效果。”,您可以列出您尝试过的方法,这可以让其他人知道这些方法没有用。“我讨厌堆栈溢出让你输入一定数量的内容。”,你说“一定数量”是什么意思?我觉得你需要了解“dip”的概念以及android如何处理不同的屏幕大小。很好的解释:,官方网站:只需将图像设置为特定数量的像素,就可以通过将宽度设置为
1280px
,但这并不是你想要的,因为在高密度的屏幕上,图像会很小,而在低密度的屏幕上,图像不会完全可见“所以,如果有人能看一个并给我回复,那就太好了。”你真的是在要求有人看教程视频,然后回来给你打笔记吗?哎呀,我打得太多了。哦,天哪,我只是需要帮助