当前位置: 首页 > news >正文

中山市开发区建设局网站盗图来做网站

中山市开发区建设局网站,盗图来做网站,餐行健品智餐饮管理系统,福州注册公司快点办Unity UGUI的LayoutRebuilder的介绍及使用 1. 什么是LayoutRebuilder? LayoutRebuilder是Unity UGUI中的一个组件,用于自动重建布局。它可以根据UI元素的变化,自动调整其子元素的位置和大小,以保持布局的一致性。 2. LayoutReb…

Unity UGUI的LayoutRebuilder的介绍及使用

1. 什么是LayoutRebuilder?

LayoutRebuilder是Unity UGUI中的一个组件,用于自动重建布局。它可以根据UI元素的变化,自动调整其子元素的位置和大小,以保持布局的一致性。

2. LayoutRebuilder的工作原理

LayoutRebuilder通过遍历UI元素的子元素,根据子元素的布局参数和约束条件,计算出子元素的位置和大小。然后,它会根据这些计算结果,调整子元素的位置和大小,以保持布局的一致性。

3. LayoutRebuilder的常用属性

  • transform: 获取或设置要重建布局的UI元素的Transform组件。
  • layoutRebuildRect: 获取或设置要重建布局的UI元素的RectTransform组件。

4. LayoutRebuilder的常用函数

  • ForceRebuildLayoutImmediate(): 强制立即重建布局。
  • MarkLayoutForRebuild(): 标记布局为需要重建。

5. 完整例子代码

例子1:自动调整子元素的位置和大小

using UnityEngine;
using UnityEngine.UI;public class Example1 : MonoBehaviour
{public LayoutGroup layoutGroup;private void Start(){// 在布局发生变化时,调用ForceRebuildLayoutImmediate()函数layoutGroup.transform.GetComponent<RectTransform>().ForceRebuildLayoutImmediate();}
}

操作步骤:

  1. 将Example1脚本挂载到一个UI元素上。
  2. 将要重建布局的UI元素的LayoutGroup组件赋值给layoutGroup变量。
  3. 运行游戏,布局会自动调整子元素的位置和大小。

注意事项:

  • 在布局发生变化时,需要手动调用ForceRebuildLayoutImmediate()函数。

例子2:标记布局为需要重建

using UnityEngine;
using UnityEngine.UI;public class Example2 : MonoBehaviour
{public LayoutGroup layoutGroup;private void Start(){// 标记布局为需要重建layoutGroup.transform.GetComponent<RectTransform>().MarkLayoutForRebuild();}
}

操作步骤:

  1. 将Example2脚本挂载到一个UI元素上。
  2. 将要重建布局的UI元素的LayoutGroup组件赋值给layoutGroup变量。
  3. 运行游戏,布局会自动调整子元素的位置和大小。

注意事项:

  • 标记布局为需要重建后,布局会在下一帧自动重建。

例子3:获取布局的计算结果

using UnityEngine;
using UnityEngine.UI;public class Example3 : MonoBehaviour
{public LayoutGroup layoutGroup;private void Start(){// 获取布局的计算结果Rect layoutRect = layoutGroup.transform.GetComponent<RectTransform>().rect;Debug.Log("Layout Rect: " + layoutRect);}
}

操作步骤:

  1. 将Example3脚本挂载到一个UI元素上。
  2. 将要获取布局计算结果的UI元素的LayoutGroup组件赋值给layoutGroup变量。
  3. 运行游戏,控制台会输出布局的计算结果。

注意事项:

  • 获取布局的计算结果需要在布局重建后进行。

例子4:自定义布局参数

using UnityEngine;
using UnityEngine.UI;public class Example4 : MonoBehaviour
{public LayoutGroup layoutGroup;public float spacing = 10f;private void Start(){// 自定义布局参数layoutGroup.spacing = spacing;layoutGroup.transform.GetComponent<RectTransform>().ForceRebuildLayoutImmediate();}
}

操作步骤:

  1. 将Example4脚本挂载到一个UI元素上。
  2. 将要自定义布局参数的UI元素的LayoutGroup组件赋值给layoutGroup变量。
  3. 设置spacing变量为所需的间距。
  4. 运行游戏,布局会按照自定义的布局参数进行调整。

注意事项:

  • 自定义布局参数需要在布局重建前进行。

例子5:动态添加子元素后重建布局

using UnityEngine;
using UnityEngine.UI;public class Example5 : MonoBehaviour
{public LayoutGroup layoutGroup;public GameObject prefab;private void Start(){// 动态添加子元素GameObject newElement = Instantiate(prefab, layoutGroup.transform);newElement.transform.SetAsLastSibling();// 重建布局layoutGroup.transform.GetComponent<RectTransform>().ForceRebuildLayoutImmediate();}
}

操作步骤:

  1. 将Example5脚本挂载到一个UI元素上。
  2. 将要添加子元素的UI元素的LayoutGroup组件赋值给layoutGroup变量。
  3. 将要动态添加的子元素的预制体赋值给prefab变量。
  4. 运行游戏,子元素会被动态添加,并且布局会自动调整。

注意事项:

  • 动态添加子元素后,需要手动调用ForceRebuildLayoutImmediate()函数。

6. 参考资料

  • Unity官方文档:LayoutRebuilder
  • Unity官方教程:Layout Components
http://www.yayakq.cn/news/665807/

相关文章:

  • 房地产公司网站建设方案购物网站开发毕业设计
  • 常平东莞网站设计网站seo优化发布高质量外链
  • 网站建设实战哪家公司提供专业的网站建设
  • 外国人做的学汉字网站一个好的网站应该具有什么
  • 做公众号的网站有哪些功能大宗商品平台
  • 网站优秀作品网站广告模板代码
  • 重庆市设计院seo自学网官方
  • dw个人网站设计模板免费网站前台功能模块设计
  • asp.net做网站系统wordpress网站首页
  • 流量网站怎么做做网站需要的相关知识
  • 海东电子商务网站建设网站建设与维护实验心得
  • 手机网站绑定域名是什么意思百度关键词优化首选667seo
  • wordpress淘宝客网站运营前端线下培训
  • 千里马招标网站摄图网官网
  • 网站维护包括的内容ui设计手机界面
  • 帮别人做网站如何备案沈阳沈河seo网站排名优化
  • 网站icp备案信息不能为空门户网站开发简历
  • thinkphp和wordpress湛江网站优化
  • 佛山市南海建设局网站三个字最吉利最旺财的公司名
  • 绵阳公司商务网站制作小企业网站建设查询
  • 重庆建设机电网站触摸屏网站建设
  • 商品定制平台网站如何制作app软件演示教程
  • 中国建设部网站官网wordpress调用96编辑器
  • 拍卖网站建设需求快速搭建网站python
  • 网站开发毕业设计开课题目注册公司流程和资料
  • iis网站改端口公司做网站多少钱乐器
  • 商丘网站建设优化推广网站的logo在百度怎么显示不出来
  • 网站设计主题有哪些开发公司电梯前室只给一楼吊顶
  • 辽宁建设厅官方网站海口网络推广
  • 哪个网站可以做销售记录仪网站栏目和版块的设计心得