Проблема с разрешением экрана

135
03 мая 2019, 16:50

Есть строка:

( Screen.SetResolution(res[res.Length-1].width, res[res.Length-1].height, true);) 

которая делает разрешение экрана по умолчанию 1920x1080, но по неизвестной мне причине не делает этого, получается так что по умолчанию 640x480.

using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.UI;
public class ResolutionSetting : MonoBehaviour {
    public Dropdown dropDown;
    Resolution[] res;
    void Start () {
        Resolution[] resolution = Screen.resolutions;
        res = resolution.Distinct().ToArray();
        string[] strRes = new string[res.Length];
        for (int i=0; i<res.Length; i++)
        {
            strRes[i] = res[i].ToString();
        }
        dropDown.ClearOptions();
        dropDown.AddOptions(strRes.ToList());
        //разрешение по умолчанию
        Screen.SetResolution(res[res.Length-1].width, res[res.Length-1].height, true);
    }
    public void setres()
    {
        Screen.SetResolution(res[dropDown.value].width, res[dropDown.value].height, true);
    }
}

Все, проблема решена (кому интересно вот код)

using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.UI;
public class ResolutionSetting : MonoBehaviour {

public Dropdown dropDown;
Resolution[] res;
public Slider slider;
public Text currentRes; //для вывода

void Start () {
   Resolution[] resolution = Screen.resolutions;
    res = resolution.Distinct().ToArray();
    string[] strRes = new string[res.Length];
    for (int i=0; i<res.Length; i++)
    {
        strRes[i] = res[i].ToString();
    }
    dropDown.ClearOptions();
    dropDown.AddOptions(strRes.ToList());
    dropDown.value = res.Length - 1;
    //разрешение по умолчанию
    Screen.SetResolution(res[res.Length-1].width, res[res.Length-1].height, true);
    //slider
    slider.maxValue = res.Length - 1;
    slider.wholeNumbers = true;
    slider.value = res.Length - 1;
    currentRes.text = res[(int)slider.value].width.ToString() + "x" + res[(int)slider.value].height.ToString();
}

public void setres()
{
    Screen.SetResolution(res[dropDown.value].width, res[dropDown.value].height, true);
}
public void SetResSlider()
{
    Screen.SetResolution(res[(int)slider.value].width, res[(int)slider.value].height, true);
    currentRes.text = res[(int)slider.value].width.ToString() + "x" + res[(int)slider.value].height.ToString();
}

}

Answer 1

Попробуй с начала отключить диалоговое решение.в star

PlayerSettings.displayResolutionDialog = ResolutionDialogSetting.Disabled;

а потом уже Screen.SetResolutian.....

READ ALSO
Проблема с десериализацией JSON в C#

Проблема с десериализацией JSON в C#

У меня возникла проблема с десериализацией JSON, при том что сериализация работаетВот мои методы для сериализации и десериализации объектов...

136
Вызвано исключение: &ldquo;Microsoft.EntityFrameworkCore.DbUpdateException&rdquo; в Microsoft.EntityFrameworkCore.dll. Как исправить

Вызвано исключение: “Microsoft.EntityFrameworkCore.DbUpdateException” в Microsoft.EntityFrameworkCore.dll. Как исправить

существует контекст CommonContext и класс SapmleData в котором происходит инициализация бдПосле context

136
Добавление новой вкладки tabcontrol

Добавление новой вкладки tabcontrol

Пытаюсь осуществить добавление новой вкладки TabControlОна создается, но пустая,а хотелось бы чтоб на ней был кнопка Close как на других существующих...

163