LibGDX游戏引擎-6-常用控件(Component)

qsuron 发布于 2014-03-17 libGDX框架 57 次阅读 无~ 2037 字 预计阅读时间: 9 分钟


二、Image控件(图片)-------------------------------------------------------------------------------------

Image(Texture texture) 和 Image(TextureRegion region)  比较常用

-------------------------------------------------------------------------------------
API定义:在一个小范围内,显示和拉伸一个纹理。首选的的参数是负责尺寸的。
仅当使用一个TextureRegionDrawable的演员时候才使用拉伸,旋转,和设置起点来赋值给所使用的图片。
------------------------------------------------------------------------------------

常用方法:

VictoriaImage.setColor(Color.PINK); //颜色
VictoriaImage.setScale(0.5F); //缩放比例
VictoriaImage.setPosition(230, 40); //绘画起点
VictoriaImage.setOrigin(0, 0); //设置旋转中心
VictoriaImage.setRotation(45); //旋转角度
VictoriaImage.setSize(390, 300); //绘画大小

-------------------------------------------------------------------------------------
例子代码:

package com.me.mygdxgame;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.Texture.TextureFilter;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.g2d.TextureRegion;
import com.badlogic.gdx.scenes.scene2d.Stage;
import com.badlogic.gdx.scenes.scene2d.ui.Label;
import com.badlogic.gdx.scenes.scene2d.ui.Label.LabelStyle;
import com.badlogic.gdx.scenes.scene2d.ui.Image;
import com.badlogic.gdx.scenes.scene2d.ui.Skin;
import com.badlogic.gdx.scenes.scene2d.ui.Table;

public class MyGdxGame implements ApplicationListener {

   Stage stage;
   Image VictoriaImage;
   TextureRegion region;
   Texture tex;

   @Override
   public void create() {
       tex = new Texture(Gdx.files.internal("data/1.png"));
       region = new TextureRegion(tex, 0, 0, 512, 512);
       VictoriaImage = new Image(region);
       VictoriaImage.setColor(Color.PINK);
       VictoriaImage.setScale(0.5F);
       VictoriaImage.setPosition(230, 40);
       VictoriaImage.setOrigin(0, 0);// 设置旋转中心
       VictoriaImage.setRotation(45);
       VictoriaImage.setSize(390, 300);
       stage = new Stage(480, 320, false);
       Gdx.input.setInputProcessor(stage);
       stage.addActor(VictoriaImage);
   }

   @Override
   public void dispose() {

   }

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

   }

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

   @Override
   public void pause() {
   }

   @Override
   public void resume() {
   }
}