用图片显示数字

做UI时,有时需要用到各种风格的数字,我们一般不会单独做成字体,而是会用图片来表示。

在此,编写了一个脚本,用来专门显示图片数字,并且是专门适用于UGUI的。

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System.Collections.Generic;
public class ShowNumber : MonoBehaviour {
    List<Sprite> l_Number = new List<Sprite> ();
    Sprite s_Number=new Sprite();
    Image[] i_Score;
    int temp;

    void Awake() {
        l_Number.Clear ();
        for (int i=0; i<10; i++) {
            l_Number.Add((Sprite)Resources.Load (StaticFont.No+i,s_Number.GetType()));
        }
        i_Score = transform.GetComponentsInChildren<Image> ();
        for (int i=0; i<i_Score.Length; i++) {
            i_Score[i].sprite=l_Number[0];
        }
    }
    public void ShowImageByNumber(int _number){
        for (int i=0; i<i_Score.Length; i++) {
            i_Score[i].sprite=l_Number[0];
        }
        int step = 0;    
        while (_number>=1) {
            temp=_number%10;
            i_Score[step].sprite=l_Number[temp];
            _number/=10;
            step++;
        }
    }
}

注意:

  在空物体下绑该脚本,空物体下在添加若干Image,并且是从个位开始往下添加,顺序不要弄错

 

posted @ 2015-12-20 10:41  团谋  阅读(1429)  评论(0编辑  收藏  举报