Unity Editor 編輯器擴展二 Inspector面板特殊屬性

目錄

Inspector面板特殊屬性

這個知識點網上介紹很多,在此只是學習,其實也很簡單,貼出代碼,一看便懂。

代碼 Test2_1.cs

using UnityEngine;
using System.Collections;

public class Test2_1 : MonoBehaviour
{
//  限定取值範圍
    [Range(1, 10)]
    public int num1;

    [Range(1, 10)]
    public float num2;

    [Range(1, 10)]
    public long num3;

    [Range(1, 10)]
    public double num4;

//  空出多行
    [Multiline(5)]
    public string multiline;

    [TextArea(3, 5)]
    public string textArea;
}

代碼 Test2_2.cs

using UnityEngine;

public class Test2_2 : MonoBehaviour
{
//  對本組件右鍵設置功能按鈕
    [ContextMenu("Init")]
    void Init(){
    }
//  對本屬性右鍵設置功能按鈕
    [ContextMenuItem ("Random", "RandomNumber")]
    [ContextMenuItem ("Reset", "ResetNumber")]
    public int number;

    void RandomNumber ()
    {
        number = Random.Range (0, 100);
    }

    void ResetNumber ()
    {
        number = 0;
    }


//  設置調色板
    public Color color1;

    [ColorUsage (false)]
    public Color color2;

    [ColorUsage (true, true, 0, 8, 0.125f, 3)]
    public Color color3;
}

代碼 Test2_3.cs

using UnityEngine;
using System;

public class Test2_3 : MonoBehaviour
{
    [Header("Player Settings")]
    public Player player;

    [Serializable]
    public class Player
    {
        public string name;

        [Range(1,100)]
        public int hp;
    }

    [Header("Game Settings")]
    public Color background;

    [Space(16)]
    public string str1;

    [Space(48)]
    public string str2;

    [Tooltip("這是一個提示工具")]
    public long tooltip;

    public string str3;

    [HideInInspector]
    public string str4;

}

代碼 Test2_4_2.cs

//物體必須有Animator組件
[RequireComponent(typeof(Animator))]
//一個物體不能加多個Test2_4_2腳本或者它的子類
[DisallowMultipleComponent]
public class Test2_4_2 : MonoBehaviour {

}

代碼 Test2_4_4.cs

using UnityEngine;
using UnityEngine.Serialization;

public class Test2_4_4 : MonoBehaviour {

//  這個屬性網上大多講的不太清楚,按我的步驟操作一下就明白了
//  1.在inspector給兩 字符串賦值,保存
//  2.將value1改成valueFirst,value2改成valueSecond,保存
//  3.你會發現value1之前賦給的值沒有丟,這就是它的作用
    [FormerlySerializedAs("Value1")] 
    public string value1; 
    public string value2;

}

還有其他的,這裏就不一一介紹了
相關資源:http://download.csdn.net/detail/warrenmondeville/9694658
本文鏈接:http://blog.csdn.net/WarrenMondeville/article/details/53296958

發佈了31 篇原創文章 · 獲贊 17 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章