最近工作中被一个Group局部布局的问题搞的焦头烂额,问题是这样的,由于新设备面板要虚拟融合各种AS、AP等,在面板的有些级联端口上要求可以通过双击打开级联的设备,也就是一个子拓扑,通过Group来组合显示。遇到的问题是,采用AutoLayouter来进行自动布局时,每次布局都将所有的group元素都重新布局,导致每个端口的group显示位置混乱。而期望结果是,当打开一个端口的子拓扑时,该子拓扑固定显示在该端口下方一定位置处,再打开其他端口的子拓扑时,也一样方式显示,对之前已经打开的子拓扑的显示没有影响。
开始的处理思路是每次打开新的子拓扑时,进行布局的对象是全局的,没有设置指定的布局对象,才导致这种现象,但是按照这种思路修改了很久也没搞定,不知道是不是还有没想到的地方。
上述方法没搞定,于是换了一种思路,就是每次在进行新的布局之前,先将之前已经布局过的group的位置都记住,新的对象布局结束以后,再将原来的位置恢复,通过这种算是把问题解决了。