From a0c1b13a47fd4beb9f8a0ed48207e04f15aae4bd Mon Sep 17 00:00:00 2001 From: tianmo Date: Fri, 16 Oct 2026 17:37:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=97=E8=A1=A8=E8=A1=A8=E6=A0=BC=E5=A4=96?= =?UTF-8?q?=E5=8C=85=E4=B8=80=E5=B1=82=E5=AE=B9=E5=99=A8=EF=BC=88=E5=AE=B9?= =?UTF-8?q?=E5=99=A8=20setFillParent=20+=20=E8=A1=A8=E6=A0=BC=20expand/fil?= =?UTF-8?q?l=EF=BC=89=EF=BC=8C=E8=AE=A9=E8=A1=A8=E6=A0=BC=E9=93=BA?= =?UTF-8?q?=E6=BB=A1=20ScrollPane=20=E8=A7=86=E5=8F=A3=EF=BC=88=E7=BB=BF?= =?UTF-8?q?=E6=A1=86=3D=E7=BA=A2=E6=A1=86=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- viewpanel/src/com/spineview/ObjectPanel.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/viewpanel/src/com/spineview/ObjectPanel.java b/viewpanel/src/com/spineview/ObjectPanel.java index 929f59f..06a51b0 100644 --- a/viewpanel/src/com/spineview/ObjectPanel.java +++ b/viewpanel/src/com/spineview/ObjectPanel.java @@ -91,7 +91,15 @@ public final class ObjectPanel { // 列表内容靠左上:ScrollPane 里控件比视口小时默认会居中,看起来就像"列表跑到中间/下面" call(state.listTable, Obf.TABLE_TOP, new Class[0], tableClass); call(state.listTable, Obf.TABLE_LEFT, new Class[0], tableClass); - Object scroll = scrollClass.getConstructor(actorClass, skinClass).newInstance(state.listTable, skin); + // 给列表表格包一层容器:容器填满 ScrollPane 视口(=红框),列表表格再 expand/fill 填满容器, + // 这样"绿色(表格)"就跟"红色(视口)"一样大。 + Object wrapper = tableClass.getConstructor().newInstance(); + call(wrapper, Obf.TABLE_SET_FILL_PARENT, new Class[] {boolean.class}, void.class, + Boolean.TRUE); + Object wrapperCell = call(wrapper, Obf.TABLE_ADD, new Class[] {actorClass}, cellClass, + state.listTable); + layoutCell(wrapperCell, Obf.CELL_TOP, Obf.CELL_FILL_X, Obf.CELL_FILL_Y, Obf.CELL_EXPAND); + Object scroll = scrollClass.getConstructor(actorClass, skinClass).newInstance(wrapper, skin); state.listScroll = scroll; makeTouchable(scroll); attachEventProbe(scroll, "listScroll");