each View prefab contains more than one UIPanel, when I insert a new ViewC between ViewB and ViewD, all UIPanel depth need to be updated as follows, the easier method is traverse the hierarchy in order.
ViewA (PanelA [depth = 0], PanelB [depth = 1])
ViewB (PanelC [depth = 0], PanelD [depth = 1])
ViewC (PanelE [depth = 0], PanelF [depth = 1])
ViewD (PanelG [depth = 0], PanelH [depth = 1])
step 1:
ViewA (PanelA [depth = 1], PanelB [depth = 2])
|-ViewB (PanelC [depth = 3], PanelD [depth = 4])
|-ViewD (PanelG [depth = 5], PanelH [depth = 6])
step 2:
ViewA (PanelA [depth = 1], PanelB [depth = 2])
|-ViewB (PanelC [depth = 3], PanelD [depth = 4])
|-ViewC (PanelE [depth = 5], PanelF [depth = 6])
|-ViewD (PanelG [depth = 7], PanelH [depth = 8])