NGUI动态添加自带的attach a collider 动态改变碰撞高度代码
如果用ngui自带的UIGrid 间隔是固定的无法根据行数 增加指定的间隔会出现挤行的现象
↑挤行了
NGUITools.AddWidgetCollider(obj);
grid.cellHeight = obj.GetComponent<BoxCollider>().size.y;
就算这样设置boxCollider正常 但UIGRID也无法判断挤行
于是乎,勾了他
自己写个判断
countC前面定义一个=0;
24.1923 是一行collider高度
下面是判断二行的代码,只给出一个思路,其他的自己想吧
GameObject item = GameObject.Find(obj.name);
if (obj.GetComponent<BoxCollider>().size.y < 25)
{
item.transform.localPosition = new Vector3(0, obj.GetComponent<BoxCollider>().size.y * (GameObject.FindGameObjectsWithTag("PublicGridItem").Length+countC), 0);// new Vector3(0, 0, 0);
}
else
{
countC = countC + 1;
item.transform.localPosition = new Vector3(0, (24.1923f * (GameObject.FindGameObjectsWithTag("PublicGridItem").Length + countC)), 0);
}
item.transform.localScale = new Vector3(1, 1, 1); 转播微博http://app.qlogo.cn/mbloghead/87640713c7c33be2bad8
不错 不错 不错
感谢楼主的无私分享! 很不错 楼主是超人 好帖就是要顶 不错不错 LZ真是人才 很不错
页:
[1]