如何将小部件添加到scene2d.ui对话框(TextField等)?

时间:2014-06-08 16:05:51

标签: java libgdx scene2d

当我按照下面的代码片段中显示的方式创建对话框时,如何添加其他小部件(如TextField)?

btnTest.addListener(new ChangeListener()
{
  public void changed(ChangeEvent event, Actor actor)
  {
    new Dialog("Test Dialog", globals.skin, "dialog")
    {
      protected void result (Object object)
      {
        if (object.equals(true))
        {
          if (txtID.getText() != "")
          {
             globals.appState = AppState.INTRO;
          }
        }
      }
    }.text("Enter ID")
     .button("Cancel", false)
     .button("OK", true)
     .show(stage);
  }
});

1 个答案:

答案 0 :(得分:2)

尝试添加如下默认构造函数:

btnTest.addListener(new ChangeListener()
{
  public void changed(ChangeEvent event, Actor actor)
  {
    new Dialog("Test Dialog", globals.skin, "dialog")
    {

    {
       //Things like this.getButtonTable().add(Actor);
    }

      protected void result (Object object)
      {
        if (object.equals(true))
        {
          if (txtID.getText() != "")
          {
             globals.appState = AppState.INTRO;
          }
        }
      }
    }.text("Enter ID")
     .button("Cancel", false)
     .button("OK", true)
     .show(stage);
  }
});