PlayN: добавить текстовое поле TriplePlay в специальную позицию

У меня есть простой фоновый слой:

@Override
public void wasAdded() {
    super.wasAdded();

     Image bgImage = PlayN.assets().getImage("images/Welcome.png");
     ImageLayer bgLayer = graphics().createImageLayer(bgImage);
     layer.add(bgLayer);

     Image usernameButton =
     PlayN.assets().getImage("images/textField.png");
     ImageLayer usernameLayer =
     graphics().createImageLayer(usernameButton);
     usernameLayer.setTranslation(197, 337);
     layer.add(usernameLayer);

    }
}

И я хотел бы добавить элемент текстового поля в определенную позицию (над изображением имени пользователя).

final Field field = new Field();
field.text.update("your name");

Как мне этого добиться? Благодарю.

1 ответ

Решение

Мне нужно создать корень AbsoluteLayout и добавить группу в определенной позиции:

_root = iface.createRoot(new AbsoluteLayout(), SimpleStyles.newSheet(), layer);
_root.setSize(width(), height());
Group group = new Group(new AbsoluteLayout()).add(AbsoluteLayout.at(new Field("username"), 197, 337));
_root.add(AbsoluteLayout.at(group, 0, 0));
Другие вопросы по тегам