更新GridLayout

时间:2014-03-26 11:27:45

标签: java grid-layout panels

我正在做一个迷宫游戏。非常简单的实现。纯娱乐。

我制作了一个填充彩色面板的网格Size x Size。面板是从二维数组创建的(当我存储迷宫的当前状态时)。例如,对于' X' (墙壁)我把黑色面板和角色我放了另一种颜色。

问题是当我改变角色的位置时。如果板子尺寸小没问题。但由于101x101滞后很多,因为我每次移动都会删除所有面板并重新创建它。

有没有办法只更新已更改的面板?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以存储包含数组先前状态的数组副本。然后,在进行移动时,您需要比较currentStatepreviousState数组。如果这两者之间存在差异,那么您需要在面板(以及previousState - 数组)中进行更改。

如果使用布尔数组而不是String数组,那么对于相当大的字段,它也应该在性能方面有效。