LibGdx 中的扩展组
Extending Group in LibGdx
我在项目的播放屏幕中创建了一个组。该组包含许多图像和按钮作为演员。
Group newGroup = new Group();
内部展示()
newGroup.addActor(bg);
stage.addActor(newGroup);
这行得通 well.But 我想在 group.Also 中添加更多内容 我需要再创建几个组 also.So 我想我可以创建新的 类扩展集团。其实我想用模块化的方式来创建这些组。
public class newGroup extends Group {
//want to add actors here-buttons,images and other scene2d elements
}
public class actor extends Actor{
}
我有类似的想法要做,但我不知道如何有效地做到这一点,以便我可以移动和缩放组项目并在播放屏幕中访问。
请告诉我如何正确扩展 LibGdx 中的组并在播放屏幕中访问它。
所以,您需要做与示例中相同的事情,但要扩展 class。也许我的简短示例会对您有所帮助。
下面的例子中有SKIN变量。我还没有展示如何加载皮肤。阅读 Scene2D.ui 以了解 SKIN 的含义。
第一个例子(没有扩展):
Group group = new Group();
TextButton b = new TextButton(SKIN, "Press Me");
Label l = new Label(SKIN, "Some text");
b.setPosition(0, 0); //in groups coordinates
l.setPosition(0, 100);
group.addActor(l);
group.addActor(b);
stage.addActor(group);
你可以通过扩展来做同样的事情:
public class MyGroup extends Group {
private TextButton b;
private Label l;
public MyGroup() {
b = new TextButton(SKIN, "Press me");
l = new Label(SKIN, "Some text");
b.setPosition(0, 0); //in coordinates of group
l.setPosition(0, 100);
//now we will add button and label to the our extended group.
this.addActor(b);
this.addActor(l);
//"this" is unnecessary. I write this because it
//may be more clear for you to understand the code.
//"this" is our extended group and we add actors to it.
}
}
那么,现在您可以创建我们的新组并将其添加到舞台:
MyGroup myGroup = new MyGroup();
myGroup.setPosition(200, 200); //also in `stage` coords.
stage.addActor(myGroup);
我在项目的播放屏幕中创建了一个组。该组包含许多图像和按钮作为演员。
Group newGroup = new Group();
内部展示()
newGroup.addActor(bg);
stage.addActor(newGroup);
这行得通 well.But 我想在 group.Also 中添加更多内容 我需要再创建几个组 also.So 我想我可以创建新的 类扩展集团。其实我想用模块化的方式来创建这些组。
public class newGroup extends Group {
//want to add actors here-buttons,images and other scene2d elements
}
public class actor extends Actor{
}
我有类似的想法要做,但我不知道如何有效地做到这一点,以便我可以移动和缩放组项目并在播放屏幕中访问。 请告诉我如何正确扩展 LibGdx 中的组并在播放屏幕中访问它。
所以,您需要做与示例中相同的事情,但要扩展 class。也许我的简短示例会对您有所帮助。
下面的例子中有SKIN变量。我还没有展示如何加载皮肤。阅读 Scene2D.ui 以了解 SKIN 的含义。
第一个例子(没有扩展):
Group group = new Group();
TextButton b = new TextButton(SKIN, "Press Me");
Label l = new Label(SKIN, "Some text");
b.setPosition(0, 0); //in groups coordinates
l.setPosition(0, 100);
group.addActor(l);
group.addActor(b);
stage.addActor(group);
你可以通过扩展来做同样的事情:
public class MyGroup extends Group {
private TextButton b;
private Label l;
public MyGroup() {
b = new TextButton(SKIN, "Press me");
l = new Label(SKIN, "Some text");
b.setPosition(0, 0); //in coordinates of group
l.setPosition(0, 100);
//now we will add button and label to the our extended group.
this.addActor(b);
this.addActor(l);
//"this" is unnecessary. I write this because it
//may be more clear for you to understand the code.
//"this" is our extended group and we add actors to it.
}
}
那么,现在您可以创建我们的新组并将其添加到舞台:
MyGroup myGroup = new MyGroup();
myGroup.setPosition(200, 200); //also in `stage` coords.
stage.addActor(myGroup);