C#进行UGUI Button、Slider、Toggle、Dropdown等的开发

版权声明:请尊重原劳动成果 https://blog.csdn.net/qq_39646949/article/details/86304789

C#进行UGUI的Button、Slider、Toggle、Dropdown等的开发
1、Button使用
private Button m_CloseButton;
m_CloseButton=this.GetComponent<Button>();
m_CloseButton.onClick.AddListener(MyCloseEvent);
private void MyCloseEvent()
{
}
2、Slider使用
//Slider滑动条控制音量调节大小。
private Slider m_Volume;
private AudioSource m_Audio;
m_Volume= this.GetChild(2).GetComponentInChildren<Slider>();
m_Volume.onValueChanged.AddListener(x => MyVolume());
public void MyVolume()
{
m_Audio.volume = m_Volume.value;
}

3、Toggle使用
//Toggle控制音乐的打开和关闭
private Toggle m_Music;
private string m_AudioListener= “Main Camera”;
m_Music= this.GetChild(4).GetComponentInChildren<Toggle>();
m_Music.onValueChanged.AddListener(isOn =>MyMusic());
public void MyMusic()
{
if (m_Music.isOn)
{GameObject.Find(m_AudioListener).GetComponent().enabled = true;
}
else
{GameObject.Find(m_AudioListener).GetComponent().enabled = false;
}
}
4、下拉列表Dropdown的使用
4.1,使用下拉列表Dropdown来调节屏幕分辨率
private Dropdown m_Resoluting;
m_Resoluting = this.GetChild(1).GetComponentInChildren<Dropdown>();
//获得屏幕默认的分辨率。
Resolution[] resolutions = Screen.resolutions;
m_Resoluting.options = new List<Dropdown.OptionData>();
int count = resolutions.Length;
for (int i = count-1; i >0; i–)
{
m_Resoluting.options.Add(new Dropdown.OptionData(resolutions[i].width + “x” + resolutions[i].height));
}
m_Resoluting.captionText.text= Screen.currentResolution.width+“x” + Screen.currentResolution.height;
m_Resoluting.onValueChanged.AddListener(x=> MySoluting());
public void MySoluting( )
{
string[] strArr = m_Resoluting.captionText.text.Split(‘x’);
Screen.SetResolution(int.Parse(strArr[0]), int.Parse(strArr[1]), true);
}
4.2,使用下拉列表Dropdown来调节屏幕画质
private Dropdown m_Quality;
m_Quality = this.GetChild(3).GetComponentInChildren<Dropdown>();
m_Quality.onValueChanged.AddListener(x=> MyQuality());
public void MyQuality( )
{
string text = m_Quality.captionText.text;
switch (text)
{
case “最高质量”:
QualitySettings.SetQualityLevel(5, true);
break;
case “高质量”:
QualitySettings.SetQualityLevel(4, true);
break;
case “中等质量”:
QualitySettings.SetQualityLevel(3, true);
break;
case “低质量”:
QualitySettings.SetQualityLevel(2, true);
break;
case “最低质量”:
QualitySettings.SetQualityLevel(1, true);
break;
default:
break;
}
Debug.Log(“int.Parse(text)”+ text +" 质量:" + Enum.Parse(typeof(QualityLevel), QualitySettings.GetQualityLevel().ToString()).ToString());
}
5、今天先写到这里,GetComponent后面有问题的,自己看着改一下,不知道为什么我发过去就显示不了了,剩余的后面再添加,

猜你喜欢

转载自blog.csdn.net/qq_39646949/article/details/86304789