Смена сцены приводит к искажению виджета

79
25 декабря 2021, 21:40

Когда выбираю в меню виджет интеграции с картами он выглядит так:

Но стоит выбрать другую сцену, он начинает выглядеть так:

У меня виджет подключён к БД sqlite. Почему виджет искажается вовремя смены сцен? Может надо что то пренести из методов:

public static void ShowWindow()
{
...
}        
void OnEnable()
{
...
}

Убрать статические метода или на оборот обозначить какие то методы статическими?

Мой код в PlacementObjects:

...
    void OnEnable()
    {
        // _layerMenu.Initialize();
        PrefabBrushEditor._layerMenu.Initialize();
        tempType = -1;
        tempLayer = -1;
        GamObjArrayPrefab = new GameObject[0];
        GamObjArrayTexture = new Texture2D[0];
        _PosTerrain = new Vector2();
        InitTextures();
        InitOnGUI();
        setMyList();
    }
    void setMyList()
    {
        myList = ObjectDataBase.SelectAllObjMap();
        if (m_TreeViewState == null)
            m_TreeViewState = new TreeViewState();
        TextureObj = new List<Texture>();
        for (int l = 0; l < myList.Count; l++)
        {
            Texture2D myOtherTex = LoadTexture(myList[l].url_texture);
            Texture tex = myOtherTex as Texture;
            TextureObj.Add(tex);
            // List <GUILayout.Button> tempButton;
        }
        TreeHierarchy();
        m_SimpleTreeView = new SimpleTreeView(m_TreeViewState, TreeMapObjList);
    }
    void InitTextures()
    {
        HeaderSectionTexture = new Texture2D(1, 1);
        HeaderSectionTexture.SetPixel(0, 0, HeaderSectionColor);
        HeaderSectionTexture.Apply();
        LeftSectionTexture = new Texture2D(1, 1);
        LeftSectionTexture.SetPixel(0, 0, LeftSectionColor);
        LeftSectionTexture.Apply();
        RightSectionTexture = new Texture2D(1, 1);
        RightSectionTexture.SetPixel(0, 0, RightSectionColor);
        RightSectionTexture.Apply();
        FooterSectionTexture = new Texture2D(1, 1);
        FooterSectionTexture.SetPixel(0, 0, FooterSectionColor);
        FooterSectionTexture.Apply();
    }
    void InitOnGUI()
    {
        // myList = ODBtemp.SelectAllObjMap();
        Dictionary<int, string> tempTG = ObjectDataBase.GetAllTypeGeometry();
        TypeGeometryString = new string[tempTG.Count];
        int i = 0;
        foreach (var item in tempTG)
        {
            TypeGeometryString[i] = item.Value;
            // dropdownTypeGeometry.value = item.Key;
            i++;
        }
        Dictionary<int, string> tempLayer = ObjectDataBase.GetAllLayer();
        TypeLayerString = new string[tempLayer.Count + 1];
        int j = 0;
        foreach (var item in tempLayer)
        {
            TypeLayerString[j] = item.Value;
            // dropdownTypeGeometry.value = item.Key;
            j++;
        }
        Dictionary<int, string> tempmethod = ObjectDataBase.GetAllmethod();
        TypemethodString = new string[tempmethod.Count + 1];
        int k = 0;
        foreach (var item in tempmethod)
        {
            TypemethodString[k] = item.Value;
            // dropdownTypeGeometry.value = item.Key;
            k++;
        }
        string settingStringPrefab;
        ObjectDataBase.GetSettings(out prefabEditingBool, out settingStringPrefab, out mapoffsetx, out mapoffsetz, out stringObjfileURL);
        if (settingStringPrefab != "yesnull")
        {
            tempPrefab = (UnityEngine.Object)Resources.Load<GameObject>(settingStringPrefab.Replace("\\", "/").Replace("Assets/Resources/", "").Replace(".prefab", ""));
        }
        else
        {
            tempPrefab = null;
        }
    }
...
READ ALSO
C# WPF Window открыть, после закрытия

C# WPF Window открыть, после закрытия

Есть класс производый от Window, который закрывается при помощи методаClose()

85
Проблема с выводом текста

Проблема с выводом текста

Ситуация следующая есть jsonФайл лежит в Assets/Json/file

90
Записать php файл с текстом &quot;$_SERVER text&quot; через phpseclib: SSH2

Записать php файл с текстом "$_SERVER text" через phpseclib: SSH2

Необходимо создать файл "indexphp" в сессии ssh

211
Как запустить цикл foreach loop в массиве?

Как запустить цикл foreach loop в массиве?

У меня в одном массиве есть ещё 3 массива, эти 3 внутренних массив должны выводиться циклом, но у меня не получается запустить цикл внутри основного...

203