UIlabel是NGUI的基础组件之一,用来显示文本区域。创建一个UILabel,会有一个默认文本“New Label"。同样的,也会有八个点让我们方便拖拽改变label的大小。这里拖拽修改大小跟直接再Inspector面板上修改Label的width跟height并没有什么实质上的区别,只是在Inspector上面修改会以这个Label的中心点进行等距离拉伸,而直接在场景中修改,则是以拉伸的对边界为基点进行拉伸。
LabelUIlabel的Inspector面板跟UISprite的差不多。
UIlabel InspectorNGUI下拉列表点击以后会有两个选项,一个是NGUI,一个是Unity。这是让我们挑选字体来源,选择NGUI表示我们从NGUI自带的字体中选择一种,选择Unity则是Unity提供的或者我们自己导入的字体。
Font Size 表示字体的大小,默认14
Text 表示我们需要显示的文本,Unity5之前并不支持直接在输入框中输入中文,新版本可以。所有5之前的需要在外面编辑好再复制进文本框中
Modifier 是新的NGUI才有的功能,选项为None不做处理,ToUppercase自动转换为大写,ToLowerCase 自动转换为小写,Custom自定义需要绑定一个自定义的方法,用来处理文本。
MmodifierOverflow 表示Lable文本的显示方式。
Overflow总共有四种选择,Shrink Content表示挤压式,限定了lable的width跟height,文本只能再这个范围之内显示,一旦所有的文本总大小超过这个范围,统一进行缩放。我们以”hello world!“为例,当我们将lable的width缩小以后,里面的内容直接进行了统一的缩放。
Shrink ContentClamp Content 表示裁剪,同样以这width, 超出部分直接裁切,不进行显示。但是其实文本还在,只是不进行显示而已。将label的width加大,还是会显示处理的。
Clamp ContentResize Free 则简单的多,只要你添加文本,它就会跟着自动变化。不过如果你不在文本中添加换行的话,它不会自动给你换行,因此,我们需要自己注意文本的范围,适当的添加换行符。需要注意的是在这种模式下,我们无法手动调整label的width跟height。
Resize FreeResize Height 则是对ResizeFree模式的一种调整。这种模式下,我们无法修改Label的height,只能定义width。我们只需要定义好width,然后添加文本,label会自动调整height进行匹配。可以看到左右两个蓝色的小点,说明是可编辑,灰色表示不可编辑。
Resize HeightAlignment 表示改label的对齐模式
AlignmentAutomatic自动模式,Left左对齐,Center居中,Right右对齐,Justified两端对齐。这个跟word类似。
Gradient渐变,Top表示顶部颜色,Bottom表示底部颜色,只支持线性渐变,不支持径向渐变。需要注意的是,渐变只对单个文字起作用,而不是整段文字起作用,因此如果有多行,渐变会很奇怪。
Effect 表示文字效果None表示无效果,输入什么就是什么。Shadow表示添加文字阴影,Outline表示添加外边框,Outline8表示添加加粗版外边框。下面的xy表示效果的偏移量。用来调整效果。
EffectSpacing 表示文字间距,X为字间距,Y表示行间距。间距需要注意的是,行间距在一行的时候也是起作用的,所以一行的时候,效果会很奇怪,会被往边框上方挤压。
MaxLine表示此label最多显示多少行,0表示无限制,只能大于0,设置了这个参数以后,超出的文本会被裁切。
BBCode 表示使用bbcode,这样我们可以很方便的用代码对文本做一些操作。比如简单的加粗斜体之类的,我们使用[b]对文本进行加粗([b]hello world!), 跟上面未添加bbcode的对比,很容易看出效果。
BBCodeColor Tint 表示文本的颜色。有RGBA四个可以直接修改,也可以直接在色板中选择我们需要的。点击Presets下方的小方块,我们可以保存当前的选择,这样下次我们再用到同样的色值的时候,不必重新输入RGBA,而是直接选择下方保存的色块即可。
ColorUIlabel就是这么简单。这里并不涉及代码层面的讲解,一切有关的将在搭建界面的时候进行解释。不足之处,欢迎指出~ ^_^