Layout这部分UGUI算是比NGUI做的到位

之前遇到了一个问题,NGUI做文字和背景框适配和容易,绑定一下就好了。UGUI你得弄Layout才可以,而且还需要配置。

但这个Layout使用场合是真的不多。。

1.简介:

Content Size Fitter

这个是width/height = target的形式,宽高被动赋值。

Aspect Ratio Fitter

高度放大,宽度放大

Layout Groups

用来设置Min,Preferred,Flexible三项属性的约束,似乎不支持子层级

Layout Element

实时预览排列结果?

Horizontal Layout Group,Vertical Layout Group,Grid Layout Group

三种自动布局类型

2.三种排列布局类型(Horizontal Layout Group,Vertical Layout Group,Grid Layout Group)

NGUI里自动布局用的是Grid和Table,Grid是统一宽高,Table是动态宽高,但最蛋疼的是在编辑器状态下无法实时预览。

UGUI在这方面处理的还不错,可以实时预览了,三种布局传达的也很清晰明了

其实用起来还可以,也不用多说什么,上手就能用吧。

2.使用布局得到文字最终宽度和高度

官方文档中给出这么一段:

Fit to size of Text

In order to make a Rect Transform with a Text component on it fit the text content, add a Content Size Fitter component to the same Game Object which has the Text component. Then set the Horizontal Fit, the Vertical Fit, ot both to the Preferred setting.

提到Content size fitter绑定给文本框,就可以把布局绑定过去。

的确如此,但这样还有一个问题。必须依赖手动换行,不能自动换行。

这时候就要用到Layout Element了:

让它对宽度进行约束。这样再绑定宽度和高度,就可以和背景框适配了。。。

U3D UGUI学习5 - Layout和文字适配的更多相关文章

  1. U3D UGUI学习4 - Text

    1.对应NGUI的四种文字显示模式 Shrink Content 对应NGUI第一种模式     勾选Best Fit 但似乎有一个Bug,文字过多的时候会爆框.解决方法是改变Line Spacing ...

  2. U3D UGUI学习1 - 层级环境

    就像主动碰撞检测需要刚体,刚体需要Mesh Filter.Unity的一些组件都需要基础配置. UGUI的基础配置和NGUI差不多,把NGUI的那些中间件全部削减干净,甚至连快捷键也没有. 1.基础层 ...

  3. U3D UGUI学习2 - Canvas

    Canvas Render Mode - UGUI不像NGUI,它没有UI摄像机.但有时候需要做相机动画就要调出来. 在Canvas里设置第二个选项即可调出. Pixel Perferct - 这个似 ...

  4. U3D UGUI学习3 - RectTransform

    总的来说整合了NGUI很多零散功能,比如NGUI2.X处理拉伸要额外套脚本,NGUI3.X开始引入新的锚点.再加上依赖BoxCollider使得整个HUD显示非常乱 而UGUI很清晰明了,你也能看清楚 ...

  5. Unity3D UGUI学习系列索引(暂未完成)

    U3D UGUI学习1 - 层级环境 U3D UGUI学习2 - Canvas U3D UGUI学习3 - RectTransform U3D UGUI学习4 - Text U3D UGUI学习5 - ...

  6. Android 布局学习之——Layout(布局)具体解释二(常见布局和布局參数)

     [Android布局学习系列]   1.Android 布局学习之--Layout(布局)具体解释一   2.Android 布局学习之--Layout(布局)具体解释二(常见布局和布局參数)   ...

  7. Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)

    [Android布局学习系列]   1.Android 布局学习之——Layout(布局)详解一   2.Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)   3.And ...

  8. Android开发学习之路-带文字的图片分享

    有用过微信分享SDK的都应该知道,微信分享到朋友圈的时候是不能同时分享图片和文字的,只要有缩略图,那么文字就不会生效.那么问题就来了,如果我们想把APP内的某些内容连带图片一起分享到微信,是不是没办法 ...

  9. UGUI 学习笔记

    1.UGUI中是没有depth的概念,那要怎么在脚本中动态的改变一个UI元素在hierarchy中的排序位置呢? 放到最上面 Transform.SetAsFirstSibling最下面Transfo ...

随机推荐

  1. MyEclipse下如何安装svn插件

    方法一:在线安装 1.打开HELP->MyEclipse Configuration    不过多数情况下再myeclipse实现不了   Center.切换到SoftWare标签页. 2.点击 ...

  2. clock gating and PLL

    一个gating的clock是指:clock network除了包含inverter和buffer外,还有其他logic. PrimeTime会自动的对gating input进行setup和hold ...

  3. yii2中表单的字段标签名称

    1.以登陆页面为例,默认是英文的,在loginForm.php中添加attributeLabels,可以变成中文 具体代码如下: public function attributeLabels(){  ...

  4. 帮初学者改代码——有多少青春可以挥霍之“c语言 多重排序”

    原文:“c语言 多重排序” 原代码: #include<stdio.h> #include<string.h> struct A { char name[100]; int g ...

  5. HGE游戏引擎之hgeQuad结构体的使用(用于渲染图片)

    HGE基本的渲染图元是hgeQuad (Quad is the basic HGE graphic primitive),其中有一个hgeVertex成员结构,它用来描述图元顶点信息.The hgeV ...

  6. 作为一个web开发人员,哪些技术细节是在发布站点前你需要考虑到的

    前日在cnblogs上看到一遍文章<每个程序员都必读的12篇文章>,其中大多数是E文的. 先译其中一篇web相关的”每个程序员必知之WEB开发”. 原文: http://programme ...

  7. UISegmentedControl(转)

    初始化UISegmentedControl NSArray *arr = [[NSArray alloc]initWithObjects:@"轻拍",@"长按" ...

  8. $("label + input") 匹配所有紧接在 prev 元素后的 next 元素

    描述: 匹配所有跟在 label 后面的 input 元素 HTML 代码: <form> <label>Name:</label> <input name= ...

  9. Javascript Regexp match and replace

    # add a new article reference to database function addnewpub() { var year = $("input#year" ...

  10. jQuery中attr() 和 prop()【转】

    Version 1.9.0 开始不建议使用 attr() 来对具有 true 和 false 两个属性的属性进行操作. 具有 true 和 false 两个属性的属性,如 checked, selec ...