Unity3D之toLua GridLayoutGroup
在开发背包的时候,一个格子里面的物品,想通过预制体动态来创建,这样修改后,也节省重复劳动,我的适配方案是
在c#代码里面我测试过,克隆预制体放在Awake()里面是没有问题的,放在start里面就会被放大,因为我实际的分辨率是500x800;
因为lua脚本是被动态绑定的,不可能放在Awake里面绑定,所以就会出现预制体被放大的问题,
---初始化物品的框
function ZGameMainWinMiddle.Init_PagePack_GridFrame( tObjPagePack )
tGridFrameObj = tObjPagePack.transform:Find("GridFrame").gameObject;
tDemoGoods = tGridFrameObj.transform:Find("GoodsItem0").gameObject;
tDemoGoodsIco = tDemoGoods.transform:Find("PagePackGoodsIco0").gameObject;
this.mRootLuaBhaviour:AddClick(tDemoGoodsIco, this.OnClickXxGoodsItem);
for t=1,29,1 do
tNewGoods = UnityEngine.Object.Instantiate(tDemoGoods);
tNewGoods.name = "GoodsItem"..tostring(t);
tNewGoods.transform.parent = tGridFrameObj.transform;
tNewGoods.transform.localScale = Vector3.one;
tDemoGoodsIco = tNewGoods.transform:Find("PagePackGoodsIco0").gameObject;
tDemoGoodsIco.name = "PagePackGoodsIco"..tostring(t);
this.mRootLuaBhaviour:AddClick(tDemoGoodsIco, this.OnClickXxGoodsItem);
end
end
通过充值缩放系数解决问题,发现在tNewGoods.transform.parent = tGridFrameObj.transform;在执行这个代码的时候缩放系数被修改了。