diff --git a/viewpanel/src/com/spineview/ObjectPanel.java b/viewpanel/src/com/spineview/ObjectPanel.java index 83f1b6f..2cd3e47 100644 --- a/viewpanel/src/com/spineview/ObjectPanel.java +++ b/viewpanel/src/com/spineview/ObjectPanel.java @@ -141,8 +141,8 @@ public final class ObjectPanel { // 下 = 日志 Label:自然高度贴底 state.root = root; cell = call(root, Obf.TABLE_ADD, new Class[] {actorClass}, cellClass, scroll); - // 中段:固定高度、不再 expand —— 否则"多出来的空间"会变成第 4 条空带 - layoutCell(cell, Obf.CELL_TOP, Obf.CELL_FILL_X, Obf.CELL_FILL); + // 中段 = 列表,是**最长的一段**:有高度下限(撑起根表格的 pref)+ expand 吃掉剩余空间 + layoutCell(cell, Obf.CELL_TOP, Obf.CELL_FILL_X, Obf.CELL_EXPAND, Obf.CELL_FILL); try { // 中段固定高度:Cell.height(float) 在载荷里叫 `I`(实测确认:设 900 -> 根表格 580->1080) call(cell, "I", new Class[] {float.class}, cellClass, Float.valueOf(450f)); @@ -152,8 +152,8 @@ public final class ObjectPanel { state.listCell = cell; call(root, Obf.TABLE_ROW, new Class[0], cellClass); Object logCell = call(root, Obf.TABLE_ADD, new Class[] {actorClass}, cellClass, state.status); - // 下段:吃掉剩下的全部高度,文字贴该段左上 —— 这样整条面板就只有 上/中/下 三段 - layoutCell(logCell, Obf.CELL_LEFT, Obf.CELL_TOP, Obf.CELL_FILL_X, Obf.CELL_EXPAND); + // 下段 = 日志:只占它需要的高度(1~6 行),贴在面板最下面 + layoutCell(logCell, Obf.CELL_LEFT, Obf.CELL_FILL_X); // 中段高度固定:Cell.height(float) 在载荷里叫 `I`(描述符 (F)LdR;) // 实测确认:设 900 后根表格高度 580 -> 1080,说明它就是 height()。 try {