using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class resolution : MonoBehaviour {
int index = 0;
private Resolution[] resolutionList;
///
/// 获取分辨率信息
///
public Resolution Get_resolution
{
get { return resolutionList[index]; }
}
[SerializeField]
private Dropdown resoluDropdown;
[SerializeField]
private Toggle FWtg;//获取切换全屏的toggle控件
public bool FullWindow { get; set; }//是否全屏的状态
//[SerializeField]
//private Text rosoluDisplay; //分辨率文字显示
private void Start()
{
//清除分辨率下拉框的内容
//resoluDropdown.ClearOptions();
//初始化全屏开关
FullWindow = Screen.fullScreen;
FWtg.isOn = FullWindow;
//规定分辨率数组长度
resolutionList = new Resolution[Screen.resolutions.Length-6];
//Debug.Log(Screen.currentResolution);
//挑选有用的值给分辨率列表
List DropdownList = new List();
for (int i = 0; i < resolutionList.Length; i++)
{
resolutionList[i] = Screen.resolutions[i+6];//添加相应的分辨率到列表
DropdownList.Add(resolutionList[i].width + " × " + resolutionList[i].height);
// Debug.Log(resolutionList[i]);
}
// Debug.Log(resolutionList.Length);
resoluDropdown.AddOptions(DropdownList);
int _width = Screen.currentResolution.width;
int _height = Screen.currentResolution.height;
//设定当前分辨率的序号
for (int i = 0; i < resolutionList.Length; i++)
{
if (resolutionList[i].width == _width && resolutionList[i].height == _height)
{
index = i;
continue;
}
}
//rosoluDisplay.text = _width + " × " + _height;
resoluDropdown.value = index;
//resolutionText.text = _width + " × " + _height;
}
public void FullWindowToggle(Toggle tg) {
FullWindow = tg.isOn;
//Debug.Log(FullWindow);
}
public void indexChange()
{
index = resoluDropdown.value;
// index = index + sum >= resolutionList.Length ? 0 : index + sum < 0 ? resolutionList.Length - 1 : index + sum;
var _width = resolutionList[index].width;
var _height = resolutionList[index].height;
//rosoluDisplay.text = _width + " × " + _height;
Screen.SetResolution(_width, _height, FullWindow);
// Debug.Log(index);
}
}