Unity中使用 UGUI Toggle 和 Toggle Group 做单选列表

1.打开Unity,然后在场景中添加“Canvas”元素

2.在Canvas中添加“Panel”

3.在Panel下添加三个Toggle

  Toggle中的Is On:默认是否选中

4.在Panel上添加“Toggle Group”组件

5.将Panel上的Toggle Group关联到Toggle的Group

  代码层中关联赋值

     ToggleItem.group = toggleGroup;

这样就可以有单选功能了

如何从代码层知道选择的是哪个Toggle呢?

Toggle中有个onValueChanged(bool boo)事件,通过这个事件可以得知Toggle每次变动后的值,将所有的Toggle放到List中,通过List.IndexOf()即可得知当前选中的是哪个Toggle

现写一个完整的demo太麻烦,下面是我一个项目里的部分代码,希望能有帮助,其中的mItemPrefab是Toggle的预设体,这个脚本绑定在Toggle的容器上,mContentTransform是Toggle的容器

如上示例,lists.IndexOf可以获取当前选择的Toggle的索引序号,通过boo可以得知当前的Toggle的状态

如有建议,还请不吝赐教

原文地址:https://www.cnblogs.com/lingLuoChengMi/p/10005890.html