Libgdx – Wie kann man Hintergrundbild in der Bühne hinzufügen?

Ich lerne libgdx aber ich stecke an einem Punkt ..

Ich habe einen Knopf in meiner Bühne hinzugefügt, jetzt möchte ich ein Bild in der Bühne hinzufügen, so dass das Bild sieht aus wie das Hintergrundbild auf die button.i bedeuten zu sagen, dass die Schaltfläche auf dem Bild liegen sollte. Ich habe Tutorials gesucht, aber nicht in der Lage, das zu tun.

  • Android: Wie benutzt man AlarmManager?
  • Wie messen Sie die Geschwindigkeit des Autos per Telefon mit Beschleunigungsmesser und Gyroskop?
  • Proxy, der eine Authentifizierung mit Android Emulator erfordert
  • Wiederverwendung von TCP-Verbindungen mit HttpsUrlConnection
  • ActionBar.setNavigationMode (ActionBar.NAVIGATION_MODE_TABS) veraltet
  • TabLayout ausgewählte Tab-Gravitation
  • Wie kann man das machen? irgendeine Hilfe?

  • Was ist der Unterschied zwischen Apache Cordova und PhoneGap?
  • Mehrere Aktivitäten / Fragmente und das Modell View Presenter Muster
  • BringToFront funktioniert nicht innerhalb eines Koordinatorlayouts
  • Wie bekomme ich Benutzer über ein Android App Update?
  • Wie implementiere ich zwei Level Slidingmenu in Android mit jfeinstein10 / SlidingMenu?
  • Android deaktivieren Enter-Taste in Soft-Tastatur
  • 3 Solutions collect form web for “Libgdx – Wie kann man Hintergrundbild in der Bühne hinzufügen?”

    Das einzige, was Sie tun müssen, ist, den Hintergrund zu draw , bevor Sie den Button s.
    Es gibt ein paar Möglichkeiten, das zu tun:
    – Du kannst den Hintergrund als Image (Unterklasse des Actor ) zur Stage hinzufügen und den z-index , um sicherzustellen, dass er als Hintergrund gezeichnet wird.
    – Sie können die Stage s SpriteBatch ( stage.getBatch() ) und verwenden Sie eine ihrer draw Methoden, um den Hintergrund zu zeichnen, bevor Sie stage.draw()

    Du SpriteBatch auch ein anderes SpriteBatch , aber ich empfehle es nicht, da es ein hübsches "schweres" Objekt ist und es in diesem Fall einfach nicht nötig ist.
    Ich denke, vor dem Aufruf von stage.draw() musst du stage.draw() anrufen, für den SpriteBatch hast du den Hintergrund SpriteBatch .

    Ein kleines Beispiel:

     stage.act(Gdx.graphics.getDeltaTime()); stage.getBatch().begin(); stage.getBatch().draw(background, 0, 0, WORLD_WIDTH, WORLD_HEIGHT); stage.getBatch().end(); stage.draw(); 

    Hier ist ein Code, den ich verwendet habe, um eine Gesundheits-Bar zu imitieren. Ich habe eine ProgressBar .

      stage = new Stage(); Texture bground = new Texture(Gdx.files.internal("pbBackground.png")); Table table = new Table(); table.setFillParent(true); stage.addActor(table); font = new BitmapFont(Gdx.files.internal("gamefonts.fnt")); font.getData().scale(.1f); skin = new Skin(); pixmap = new Pixmap(1, 1, Format.RGBA8888); pixmap.setColor(Color.WHITE); pixmap.fill(); skin.add("white", new Texture(pixmap)); LabelStyle lstyle = new LabelStyle(); lstyle.font=font; Label mylabel = new Label("HP", lstyle); mylabel.setColor(Color.RED); mylabel.setPosition(1, 6); table.addActor(mylabel); textureBar = new TextureRegionDrawable(new TextureRegion(new Texture(Gdx.files.internal("pb.png")))); barStyle = new ProgressBarStyle(skin.newDrawable("white", Color.DARK_GRAY), textureBar); barStyle.background = new TextureRegionDrawable(new TextureRegion(bground)); barStyle.knobBefore=barStyle.knob; bar = new ProgressBar(0, 10, 0.5f, false, barStyle); bar.setPosition(1, 1); bar.setValue(0); bar.setAnimateDuration(2); table.addActor(bar); 

    Diese Website kann Ihnen helfen, Fortschritte besser zu verstehen. Schauen Sie sich auch die Docs für ProgressBar an .

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.