您好,谢谢您的阅读。我正在追踪2048教程,他正在为图块使用文本/颜色。我正在使用图像。
将不同样式应用于图块时,他的代码如下:
TileText.text = TileStyleHolder.Instance.TileStyles [index].Number; TileText.color = TileStyleHolder.Instance.TileStyles[index].TextColor; TileImage.color = TileStyleHolder.Instance.TileStyles [index].Tilecolor;
我的样式持有者代码如下:
[System.Serializable] public class TileStyle { public Sprite tile_number; } public class TileStyleHolder : MonoBehaviour { //SINGLETON public static TileStyleHolder Instance; public TileStyle[] TileStyles; void Awake() { Instance = this; } }
我的图块代码如下:
public class Tile : MonoBehaviour { public bool mergedThisTurn = false; public int indRow; public int indCol; public int Number { get { return number; } set { number = value; if (number == 0) SetEmpty(); else { ApplyStyle(number); SetVisible(); } } } //private SpriteRenderer spriteRenderer; private Sprite tile_number; private int number; void Awake() { Sprite tile_number = GetComponentInChildren<Image>.sprite (); } void ApplyStyleFromHolder(int index) { tile_number.image = TileStyleHolder.Instance.TileStyles[index].tile_number; }
并引发错误:
'Sprite' does not contain a definition for 'image' and no accessible extension method
但是,如果我使用此行代码:
tile_number = TileStyleHolder.Instance.TileStyles[index].tile_number;
然后,它不会引发错误,但是合并后也不会将图块样式从2更改为4。它保持为2,并且不会引发错误。
请帮助,我现在知道如何将图像转换为数组中的下一个图像。
您好,谢谢您的阅读。我正在追踪2048教程,他正在为图块使用文本/颜色。我正在使用图像。将不同样式应用于图块时,他的代码如下:...
[tile_number
是指向Sprite
的指针。