方法一:
--local uiCamera = NGUITools.FindCameraForLayer(uiObj.layer) -- 通过脚本所在物体的层获得相应层上的相机 --local refPos = uiCamera:WorldToScreenPoint(uiObj.transform.position) -- 获取UI界面的屏幕坐标 --refPos.z = 1 -- 设置为零时转换后的pos全为0,屏幕空间的原因,切记要改
不同脚本里面执行获取到的UIcamera可能是两个
方法二:
local uiCamera = uiObj:GetComponent('UIWidget').anchorCamera local refPos = uiCamera:WorldToScreenPoint(uiObj.transform.position) -- 获取UI界面的屏幕坐标 refPos.z = 1
这个方法获取到的uicamera一定是该obj对应的camera(100%准确).