2014-02-16 3 views
1

libgdx 테스트의 스킨을 사용하고 있습니다 : uiskin.json.LibGdx의 CheckBox 이미지 크기를 변경하려면 어떻게해야합니까?

어떤 이유로 인해 확인란이 f.e. in badlogic/gdx/tests/MipMapTest.java 체크 상자의 크기는 무엇에 달려 있습니까? 카메라의 해상도? 또는 수동으로 설정하는 방법이 있습니까?

Helper.RESOLUTION_WIDTH = 800

Helper.RESOLUTION_HEIGHT = 1280

@Override 
public void show() { 

    skin = new Skin(Gdx.files.internal("skins/uiskin.json")); 
    cam = new OrthographicCamera(Helper.RESOLUTION_WIDTH, Helper.RESOLUTION_HEIGHT); 
    cam.position.set(Helper.RESOLUTION_WIDTH/2, Helper.RESOLUTION_HEIGHT/2, 0); 
    stage = new Stage(Helper.RESOLUTION_WIDTH, Helper.RESOLUTION_HEIGHT, true); 
    stage.setCamera(cam); 

    CheckBox checkBox1 = new CheckBox("", skin); 
    checkBox1.addListener(new ChangeListener() { 

     @Override 
     public void changed(ChangeEvent event, Actor actor) { 
      game.setScreen(new WinScreen2a(game)); 
     } 
    }); 
    CheckBox checkBox2 = new CheckBox("", skin); 
    checkBox2.addListener(new ChangeListener() { 

     @Override 
     public void changed(ChangeEvent event, Actor actor) { 
      game.setScreen(new WinScreen2b(game)); 
     } 
    }); 

    Window window = new Window("Dialog", skin); 
    window.debug(); 
    window.setPosition(Helper.RESOLUTION_WIDTH/2 - 375, 10); 
    window.setSize(750, 350); 

    table.add(checkBox1).left(); 
    table.getCells().get(0).size(200, 100); 
    table.add(option1).width(500).height(100).pad(10f); 
    table.row(); 

    table.add(checkBox2).left(); 
    table.getCells().get(2).size(200, 100); 
    table.add(option2).width(500).height(100).pad(10f); 
    table.row(); 

    window.add(table).top().left(); 
    stage.addActor(window); 

답변

0

이 체크 박스 이미지 크기를 변경,하지만 난 클릭 감지 한 후 정확하지 않은 것으로 나타났습니다. 상자의 경계를 설정하여 변경할 수는 없지만 아직 발견되지 않은 방법이있을 수 있습니다.

CheckBox cb = new CheckBox(" Label text", xxx.getDefaultSkin()); 
// Changes the checkbox image size 
cb.getImageCell().height(50); 
cb.getImageCell().width(50); 
// Change the text size accordingly 
cb.getLabel().setFontScale(0.6f, 0.6f); 

내 thoughs는 비록이있는 사용자 정의 구성 요소를 생성 할 좋을 수있다 =>는 배우를 확장하는 클래스를 만듭니다. 클래스는 레이블이있는 이미지 단추를 래핑합니다. 그런 다음 도우미 메서드를 추가하여 필요에 따라 구성 요소를 쉽게 수정합니다. 이 방법을 사용하면 복잡하고 쉽게 재사용 가능한 구성 요소를 만드는 데 성공했습니다.

관련 문제