对于UIRect利用Anchor的定位 基本用发如下图:
相信在场景里直接拖动定位大家都很熟悉,在此不赘述。 本人目前使用的是NGUI 3.0.8可能高版本解决了本人遇到的下列问题。
很多时候为了避免场景一次加载过多资源。会利用prefab及assetbuddle等。当你设置好后,打成prefab。Resources.Load进场景后你会发现之前设置好的Anchor定位自动重置为了None.因此动态设置anchor是很必要的。你可以写死在代码里。也可以写入配置表中。当然这个稍显麻烦但也更加利于管理和修改。
那么NGUI是怎么判定你设置的AnchorType是None、Unified、Advanced的呢。如下图:
0 0.5 1以外的其他值会被判定为custom。 custom的具体用法还未做深究。
LeftAnchor对应三个选项TargetLeft、TargetCenter、TargetRight分别是用LeftAnchor.relative来指定。分别对应0,0.5,1。偏移量有absolute指定。
RightAnchor对应三个选项TargetLeft、TargetCenter、TargetRight分别是用RightAnchor.relative来指定。分别对应0,0.5,1。偏移量有absolute指定。
BottomAnchor对应三个选项TargetBottom、TargetCenter、TargetTop分别是用BottomAnchor.relative来指定。分别对应0,0.5,1。偏移量有absolute指定。
TopAnchor对应三个选项TargetBottom、TargetCenter、TargetTop分别是用TopAnchor.relative来指定。分别对应0,0.5,1。偏移量有absolute指定。