所以我一直在尝试使用RexRainbow Phaser UI插件,由于某种原因,我制作的所有UI都是不可见的,但是当我画边界时,它画了它们,给我留下了一堆红框。为什么它们都是不可见的?
代码Here(Github要点)
//UI
var tabs = this.rexUI.add
.tabs({
x: 400,
y: 1600,
panel: this.rexUI.add.gridTable({
background: this.rexUI.add.roundRectangle(
0,
0,
20,
10,
10,
0x4e342e
),
table: {
width: 250,
height: 400,
cellWidth: 120,
cellHeight: 60,
columns: 1,
mask: {
padding: 2,
},
},
slider: {
//scroll bar
track: this.rexUI.add.roundRectangle(
0,
0,
20,
10,
10,
this.COLOR_DARK
),
thumb: this.rexUI.add.roundRectangle(
0,
0,
5,
40,
10,
this.COLOR_LIGHT
),
}
.layout()
.drawBounds(this.add.graphics(), 0xff0000); //debug for ui
https://codepen.io/vatsadev/pen/dyqGNBG
-〉完整工作示例
1条答案
按热度按时间nmpmafwu1#
这也很难说,但我只是可以假设,原因是,颜色的使用 (不可见) 可能是
undefined
,这就是为什么透明/不可见。在不知道整个代码的情况下,最好检查变量/属性用于颜色 (如:(一个月一个月一个月、一个月二个月一个月、......)
特别是第62行,因为这里
this
上下文是tabs
-对象的本地上下文,而不是scene
对象。***提示:*为了调试的目的,我会硬编码所有的颜色,只是为了看看设置是否工作,如预期的。如果是这样,开始用变量替换硬编码的值,像这样你会很快找到罪魁祸首。