八、PopuList下拉菜单

1、使用Populist的规律:

(1)、有一系列选项需要玩家做出选择,这些选项是有限多个的。

(2)、这些选项玩家必须选择一个,也只能选择一个。

(3)、这些选项如果全部出来用Toggle制作单选功能会非常占用屏幕空间。

2、开始制作(当然也可以从Prefabs ToolBar汇总选择相关预制体即可)

(1)、创建一个Sprite,用来当做下拉框的背景

(2)、为该Sprite添加BoxCollider和附加Populist Scrpts组件

(3)、输入下拉框中的内容即可。

3、下拉框选中的内容显示:

此时在下拉框中选中一个选项后,并没有显示出来,这是少了个用来显示的Label,我们在Spritede的节点下添加一个即可,

注意设置锚点大小,锚点的设置在后面会用一篇文章来介绍。当添加完毕后,将Label拖到下拉菜单PopupList组件的On Value Change 回调中

,选择SetCurrentSelection方法,这样当PopupList的选项改变时,当前选中的选项会更新到与这个关联的Label中进行显示。

4、参数详解;

(1)、Options:这是下拉菜单的各个选项录入的地方,识别方式为按行识别

(2)、Default:默认情况下选中的选项,默认情况下会自动填充我们录入的第一个选项

(3)、Position

3.1、Auto :菜单将会自动决定是从上方弹出还是从下方弹出【建议是使用AUTO,因为屏幕的的大小是不固定的】

3.2、Above;菜单将会从上方弹出

3.3、Blow:菜单将会从下方弹出

(4)、Alignment:对齐方式:

(5)、Open on:打开的方式:

5.1、ClickOrTap:单击出现菜单

5.2、RightClick:右击出现菜单

5.3、DoubleClick:双击出现菜单

5.4、Manual:手动出现,只有通过代码进行控制

(6)、Localized:指菜单中的文本是否可以被本地化。本地化就是多语言翻译。

(7)、Atlas;图集设定

7.1、Atlas:选择图集

7.2、Background:设置下拉菜单的背景的精灵图片,还可以设置颜色

7.3、Highlight:设定下拉菜单出现后,鼠标移到选项上高亮显示的图片,也可设定颜色。

(8)、Font:设定菜单文本的文字,字号大小

(9)、On Value Change:触发时间

注意:在制作下拉菜单的时候,一定要注意以下事项;

1、一定要有接收单击事件的BoxCollider。

2、填写选项时,一定要注意换行

3、如果下拉菜单是为了让玩家选择语言的,则更要注意本地化的设置和字体的设置。

                                                                                              2017-12-17、21:32:36

NGUI_PopupList的更多相关文章

随机推荐

  1. hive的简单理解--笔记

    Hive的理解 数据仓库的工具  Hive仅仅是在hadoop上面包装了SQL: Hive的数据存储在hadoop上 Hive的计算由MR进行 Hive批量处理数据  Hive的特点 1 可扩展性(h ...

  2. 【翻译】.Net Core的意义

    想要了解.Net Core的意义,就必须要了解拥有很长历史的.Net Framework,.Net Framework1.0于2002年发布.从那开始,每隔两年就会有一个主版本推出.伴随着Visual ...

  3. JQuery源码-------JQuery中数值型变量的判断isNumeric

    判断一个数值型变量的方法,在jquery中非常简单,只有一行代码. isNumeric: function( obj ) { // parseFloat NaNs numeric-cast false ...

  4. java设计师初入职场,如何站稳脚跟

    本文内容一共由3部分展开 a:新人如何快速融入团队 b:如何在职场中提升自己影响力 c:如何规进行职业规划 a:如何快速融入团队   能在层层选拔下进入公司,说明你工作的能力还是得到公司的认可,不过这 ...

  5. 玩转 HTML5 下 WebGL 的 3D 模型交并补

    建设性的立体几何具有许多实际用途,它用于需要简单几何对象的情况下,或者数学精度很重要的地方,几乎所有的工程 CAD 软件包都使用 CSG(可以用于表示刀具切削,以及零件必须配合在一起的特征).CSG ...

  6. RPA(Robotic Process Automation)的概要介绍

    最近因为公司业务的需要,开始关注RPA的内容,奈何国内相关的信息太少,只能硬着头皮啃英文了. 下面记录的内容作为学习笔记,有不对的地方请大家指教. 首先RPA(Robotic Process Auto ...

  7. 在.csproj文件中增加npm, bower, gulp, webpack的构建

    <Target Name="RunNpm" AfterTargets="AfterBuild">   <!-- As part of publ ...

  8. Upgrading an ASP.NET MVC 2 Project to ASP.NET MVC 3 Tools Update

    ASP.NET MVC 3 can be installed side by side with ASP.NET MVC 2 on the same computer, which gives you ...

  9. 激光相机数据融合(5)--Gazebo仿真数据融合

    这一节将用ROS+Gazebo 环境获取激光获取点云,并用PCL和OPENCV处理,源代码在:https://github.com/ZouCheng321/5_laser_camera_sim 由于激 ...

  10. 【JDK1.8】JDK1.8集合源码阅读——TreeMap(一)

    一.前言 在前面两篇随笔中,我们提到过,当HashMap的桶过大的时候,会自动将链表转化成红黑树结构,当时一笔带过,因为我们将留在本章中,针对TreeMap进行详细的了解. 二.TreeMap的继承关 ...