중앙 도랑은 여러 번 조절할 수 있습니까?아직도 그런 짓을 하고 있어?Unity Editor 확장 중 하나

6028 단어 Unity 확장Unity
Unity Editor 확장이 시작되었습니다.
그러나 Unity Editor 확장은 가능하지만 병목 현상이 될 수 있음
UI 구성
이 버튼의 설정은 분명히 중간에 놓으려고 한다
중간은 설정할 수 있지만, 특정한 크기만이 중간의 설정이다
대상 인물상
• 편집확장에 관심 있는 사람
• UI 구성까지 신경 쓰는 사람
개발 환경
Unity2017.1.1f1
VisualStudio2017community

그런 일 없어요?

  • 가로로 배치하고 싶어요
  • 예를 들어 UI를 가로로 배열하려고 했는데 일반적인 방식으로 설명하면 세로로 배열된다.
    이러한 상황을 방지하기 위해 아래 코드를 사용하십시오
    sample1.cs
    EditorGUILayout.BeginHorizontal();
    
    並べたいUI
    
    EditorGUILayout.EndHorizontal();
    
    이 Editor GUIlayoutBegin Horizontal은 여기서부터 가로로 서라는 뜻이에요.
    Editor GUILayout이 틀림없습니다.EndHorizontal로 묶어야 합니다.
    따라서 이런 것들을 사용할 때 가독성을 높이기 위해 다음과 같은 방법으로 정리하겠습니다.
    sample1arrange.cs
    EditorGUILayout.BeginHorizontal();
    {
        並べたいUI
    }
    EditorGUILayout.EndHorizontal();
    
    
  • 세로로 배열하고 싶다
  • 세로로 늘어서 문제없겠죠?그렇게 생각하는 사람이 있을지도 몰라요.
    그런데 가로로 배열하는 도중에 세로 배열을 사용하고 싶은 설정이 있나요?
    그럴 때 씁니다.
    sample2.cs
    
    EditorGUILayout.BeginVertical();
    {
        並べたいUI
    }
    EditorGUILayout.EndVertical();
    
    
  • 복잡한 UI 패브릭을 원합니다.
  • 나는 세로 부분에서 살짝 말했는데 두 개를 썼다.
    sample3.cs
    
    EditorGUILayout.BeginHorizontal();
    {
        ボタンのUI
      
      EditorGUILayout.BeginVertical();
      {
        ボタンのUI
        ボタンのUI
      }
        EditorGUILayout.EndVertical();
    }
    EditorGUILayout.EndHorizontal();
    
    
    이렇게 하면 다음과 같은 느낌이 든다.
  • 왼쪽 정렬(또는 중앙 정렬 또는 오른쪽 정렬)
  • 왼쪽 정렬 시
    sample4.cs
    //以下のくくりは、調整したい方向に対してのくくり
    //今回は水平方向での左寄せの場合
     EditorGUILayout.BeginHorizontal();
    {
        配置したいUI
        GUILayout.FlexibleSpace();
    }
    EditorGUILayout.EndHorizontal();
    
    가운데 맞춤
    sample5.cs
    
     EditorGUILayout.BeginHorizontal();
    {
         GUILayout.FlexibleSpace();
        配置したいUI
        GUILayout.FlexibleSpace();
    }
    EditorGUILayout.EndHorizontal();
    
    오른쪽 정렬 시
    sample6.cs
     EditorGUILayout.BeginHorizontal();
    {
        配置したいUI
        GUILayout.FlexibleSpace();
    }
    EditorGUILayout.EndHorizontal();
    

    주의


    기본적으로 전후 관계 구성을 원하는 UI가 있으면 됩니다.
    이거 GUILayout.Flicble Space()에는 예상치 못한 악마가 잠재되어 있다.
    내부 활동이 어떤 관계인지는 모르겠지만.
    구성할 UI의 폭을 GUIlayout으로 설정합니다.Expand~~ (정말) 안 좋은 면이 있어요.
    예컨대
    다음 코드의 상황을 기술하였다
    sample7.cs
    EditorGUILayout.BegineHorizontal();
    {
    テキストフィールドなど、中身がないけど幅が必要なUI
    GUILayout.FlexibleSpace();
    }
    EditorGUILayout.EndHorizontal();
    
    경우
    너비가 GUIlayout으로 설정됩니다.할 일이니까.
    입력 표시줄이 거의 보이지 않는 UI가 나타납니다.
    다음은 추측입니다. (문서를 자세히 읽지 않았다고 한다)
    기본 UI의 크기는 GUIlayout으로 설정됩니다.Expand~~로 설정(진짜)
    이렇게 하면 너비가 남으면 UI가 추가됩니다.이렇게
    모든 설정이 끝난 후에 그 크기를 결정합니다.
    그리고 폭을 정하는 처리도 순서가 있어요.
    GUILayout.Expand~~ (진짜)보다 먼저, GUIlayout.FixibleSpace()
    그 결과 후자가 대부분의 폭을 차지해 전자가 나머지 계산 방법의 결과가 되지 않을까 추측했다.(진상불명)
    따라서 네스트할 때 이 점을 주의하여 UI를 구성하십시오.

    좋은 웹페이지 즐겨찾기