原来SOUI布局中使用pos2type属性来定义pos只有2个值时的偏移方式,主要用于窗口大小需要动态计算的情况下窗口位置的偏移(如水平,垂直居中等)。
pos2type可以定义9个参考点:center, lefttop, leftmid, leftbottom,midtop,midbottom,righttop,rightmid,rightbottom。
新版本的offset属性可以定义x,y两个方向的偏移量:offset = "xOctave,yOctave" ,xOctave, yOctave代表在x,y方向上偏移窗口大小的倍数,一般为[-1,0]的小数(float),当然也可以超过这个范围。
下表显示对应原pos2type属性的offset属性:
pos2type | offset |
center | -0.5,-0.5 |
lefttop | 0,0 |
leftmid | 0,-0.5 |
leftbottom | 0,-1 |
midtop | -0.5,0 |
midbottom | -0.5,-1 |
righttop | -1,0 |
rightmid | -1,-0.5 |
rightbottom | -1,-1 |
从上表可以看出,原来的pos2type属性只能是0.5的倍数,新的offset属性没有该限制。
而且原来的pos2type属性只有当pos属性中只包含两个值时有效,新的offset属性不管pos属性有没有值都有效。
当然更新可能带来一些与新版本同步的工作,如果产品已经开发完成不建议升级。