Unity手撸2048小游戏——背景文字控制

今天继续昨天的计划吧

1、新建项目、场景命名啥的都不说了吧。

2、直接开始新建一个Image,顺便把Image改名成Chessman

3、选中Image新建一个Text对象,调整下大小位置。这样就算完成了一格了吧。

4、开始撸代码,新建代码命名Chessman, 并且将代码放到Chessman下面。代码如下:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class ChessMan : MonoBehaviour {
    private Image imageObj;
    private Text textObj;

    void Start () {
        imageObj = GetComponent<Image> ();
        imageObj.raycastTarget = false;            
        textObj = GetComponentInChildren<Text> ();
        textObj.raycastTarget = false;
    }

    //改变背景图片颜色
    public void fn_ChangeBg(Color _colorValue){
        imageObj.color = _colorValue;
    }

    //改变文本文字,和对应的颜色
    public void fn_ChangeText(string _textValue,Color _colorValue){
        textObj.text = _textValue;
        textObj.color = _colorValue;
    }
}

start()有:imageObj.raycastTarget = false;

     textObj.raycastTarget = false;

这是为了不接受射线,节约资源。这是前辈告诉我的,这样可以节约资源(突然觉得拿不准的,都这么说,好像是一个甩锅的好借口)。

注意,当值为0时候,不管RGB的值时多少,A通道一定得设置为透明(00)

 

posted @ 2016-12-14 16:19  杜亿  阅读(662)  评论(0编辑  收藏  举报