使用Dropdown制作选项对应图像前,先在Dropdown添加子对象image1用于保存当前所选选项的图像的容器(官方术语是这样说的,其实就是一个显示图像内容的容器),然后再item下添加子对象image2用于保存列表项的图像(就是图像列表容器,可以照着弄然后体验一下就明白了)。
然后把这image1和image2分别拖进图上的那个地方
然后就是代码了,给游戏对象Dropdown挂上脚本DropdownChoose。
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class DropdownChoose : MonoBehaviour
{
Dropdown.OptionData m_NewData;
Dropdown m_Dropdown;
public List<string> listString;
public List<Sprite> listSprite;
void Start()
{
m_Dropdown = GetComponent<Dropdown>();
m_Dropdown.ClearOptions();
for (int i = 0; i < listString.Count; i++)
{
m_NewData = new Dropdown.OptionData();
m_NewData.text = listString[i];
m_NewData.image = listSprite[i];
m_Dropdown.options.Add(m_NewData);
}
}
}
可以看到有两个public修饰的值,用于给选项赋值,分别是选项文字和图像(我随便赋值的,你们自己看着来)。
运行后就是这个样子了