使用 [Header("text")] header 有限制吗?
Is there a limit to use the [Header("text")] header?
找到这个有用的工具后,我想用它来组织我的脚本。但是,当我添加第三个 "category" 时,出现以下错误:
attribute 'Header' is not valid on this decleration type. It is only valid on 'field' declerations.
我尝试使用 "order = x" 参数,但没有成功。知道发生了什么事吗?我似乎无法在 Unity 文档中找到任何相关信息。
[Header("Feedback settings")]
public string gameName = "";
public string sendToEmail = "";
[Space(5)]
[Header("Canvas settings")]
public Sprite emptyStar, fullStar, button;
[Range(20, 100)]
public float canvasSize;
[Range(-1, 1)]
public float canvasXPosition, canvasYPosition;
public float spritePadding, buttonYOffset;
[Header("Rate settings")] //<-- this one is marked with the above error
public enum MarketPlaces {PC, mobileTablet};
public MarketPlaces compileFor = MarketPlaces.PC;
public string rateLink;
Joe Blow 的附加代码
[Header("Canvas settings")]
public Sprite emptyStar, fullStar, button;
[Range(20, 100)]
public float canvasSize;
[Range(-1, 1)]
public float canvasXPosition, canvasYPosition;
public float spritePadding, buttonYOffset;
public enum MarketPlaces { PC, mobileTablet };
[Header("Feedback settings")]
public string gameName = "";
public string sendToEmail = "";
[Header("Rate settings")]
public MarketPlaces compileFor = MarketPlaces.PC;
public string rateLink;
[HideInInspector]
public GameObject currentCanvas, tempButton, subCanvas;
private Button[] starButtons;
private Vector2 canvasPosition;
private GameObject rateMeCanvas, rateButton, contactField, openClient;
Unity 的实现方式,您不能用枚举来遵循它。
幸运的是,解决方案很简单——只需将枚举移到它后面!
[Header("Feedback settings")]
public string gameName = "";
public string sendToEmail = "";
[Space(5)]
[Header("Canvas settings")]
// not possible...
// public Sprite emptyStar, fullStar, button;
// you must do this...
public Sprite emptyStar;
public Sprite fullStar;
public Sprite button;
[Range(20, 100)]
public float canvasSize;
[Range(-1, 1)]
public float canvasXPosition, canvasYPosition;
public float spritePadding, buttonYOffset;
public enum MarketPlaces {PC, mobileTablet};
[Header("Rate settings")] // just move to here!
public MarketPlaces compileFor = MarketPlaces.PC;
public string rateLink;
找到这个有用的工具后,我想用它来组织我的脚本。但是,当我添加第三个 "category" 时,出现以下错误:
attribute 'Header' is not valid on this decleration type. It is only valid on 'field' declerations.
我尝试使用 "order = x" 参数,但没有成功。知道发生了什么事吗?我似乎无法在 Unity 文档中找到任何相关信息。
[Header("Feedback settings")]
public string gameName = "";
public string sendToEmail = "";
[Space(5)]
[Header("Canvas settings")]
public Sprite emptyStar, fullStar, button;
[Range(20, 100)]
public float canvasSize;
[Range(-1, 1)]
public float canvasXPosition, canvasYPosition;
public float spritePadding, buttonYOffset;
[Header("Rate settings")] //<-- this one is marked with the above error
public enum MarketPlaces {PC, mobileTablet};
public MarketPlaces compileFor = MarketPlaces.PC;
public string rateLink;
Joe Blow 的附加代码
[Header("Canvas settings")]
public Sprite emptyStar, fullStar, button;
[Range(20, 100)]
public float canvasSize;
[Range(-1, 1)]
public float canvasXPosition, canvasYPosition;
public float spritePadding, buttonYOffset;
public enum MarketPlaces { PC, mobileTablet };
[Header("Feedback settings")]
public string gameName = "";
public string sendToEmail = "";
[Header("Rate settings")]
public MarketPlaces compileFor = MarketPlaces.PC;
public string rateLink;
[HideInInspector]
public GameObject currentCanvas, tempButton, subCanvas;
private Button[] starButtons;
private Vector2 canvasPosition;
private GameObject rateMeCanvas, rateButton, contactField, openClient;
Unity 的实现方式,您不能用枚举来遵循它。
幸运的是,解决方案很简单——只需将枚举移到它后面!
[Header("Feedback settings")]
public string gameName = "";
public string sendToEmail = "";
[Space(5)]
[Header("Canvas settings")]
// not possible...
// public Sprite emptyStar, fullStar, button;
// you must do this...
public Sprite emptyStar;
public Sprite fullStar;
public Sprite button;
[Range(20, 100)]
public float canvasSize;
[Range(-1, 1)]
public float canvasXPosition, canvasYPosition;
public float spritePadding, buttonYOffset;
public enum MarketPlaces {PC, mobileTablet};
[Header("Rate settings")] // just move to here!
public MarketPlaces compileFor = MarketPlaces.PC;
public string rateLink;