当我尝试将两个 ImageBundles 放在一起时,我没有得到预期的结果。子图像使父图像的大小调整为子图像的大小。我试图将按钮图像放在背景图像的顶部,但是下面的代码将按钮图像放在背景图像上,然后将背景图像缩放到按钮图像的大小。
如果我注释掉 push_children 代码行,那么两个图像都会以正确的大小显示。
let ent1 = commands.spawn_bundle(ImageBundle {
style: Style {
align_self: AlignSelf::Center,
..Default::default()
},
material: materials.add(
asset_server.load("Background.png").into()),
transform: Transform::from_translation(Vec3::new(0.0, 0.0, 0.0)),
..Default::default()
}).id();
let ent2 = commands.spawn_bundle(ImageBundle {
style: Style {
align_self: AlignSelf::Center,
..Default::default()
},
material: materials.add(
asset_server.load("button.png").into()),
transform: Transform::from_translation(Vec3::new(0.0, 0.0, 0.0)),
..Default::default()
}).id();
commands.entity(ent1).push_children(&[ent2]);