今天我们来了解一下ngui插件中的UIPopupList 列表。看看它都有哪些用处。
概览
附加一个UIPopupList脚本到一个button将让你能通过他获得一个选项列表。
为了对你的Popup List指定不同的选项,简单在Option框里面输入选项名字即可。它是一个多行文本框,你增加的每一行将创建一个新的列表项实体。所以如果你想有三个不同选项“First”,“Second”和“Third”——你只要像下面这样输入就可以了:
[csharp] view plaincopy在CODE上查看代码片派生到我的代码片
First
Second
Third
Font选项定义了popuplist用于创建label的字体。在上面的图片,first,second和third将使用inspector制定的“Arimo20”字体创建。根据字体使用类型(bitmap或dynamic),你将可能可以修改字体大小(如果使用dynamic字体的话)。你还可以调节字体颜色,字体间距等。
如果你不想popuplist以动画形式出现,只要简单去掉Animated选项就可以了。
如果你想要text选项根据Localization System自动本地化,你可以勾选“Localized”复选框。
在OnValueChange部分,你能指定一个方法,它会在popuplist选择的时候被调用。如果你已经在某个地方增加了label,你只要简单引用它的SetCurrentSelection方法,那么label的值将显示popup list的选择。想这样做,你只要把Label游戏对象拖到Notify域并从下拉列表中选择UILabel.SetCurrentSelection方法即可。
[csharp]
EventDelegate.Add(popupList.onChange, YourFunction);
这里假设你的方法名叫YourFunction:
[csharp] view plaincopy在CODE上查看代码片派生到我的代码片
void YourFunction ()
{
Debug.Log("Selection: " + UIPopupList.current.value);
}
Pro-Tip
为了制作更实用的下拉列表,在OnValueChange域引用按钮的label,并选择它的UILabel.SetCurrentSelection方法。这样将在当你从列表中选择选项的时候自动更新它的内容。
类文档
http://tasharen.com/ngui/docs/class_u_i_popup_list.html