冒泡排序做排行榜,用的是NGUI里的Label

using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class paihangbang : MonoBehaviour {
    //链表
    public List < int > Rank = new List < int >();
    //UI预设物
    public GameObject RankUI;
    //父物体
    public Transform ParentObj;
        // Use this for initialization
        void Start () {
        for ( int i = 0; i < 10; i++)
        {
             //赋值,左避右开,920到1000
            Rank.Add( Random .Range(920,1001));
        }
        //冒泡排序
        for ( int i = 0; i < Rank.Count-1; i++)
        {
            for ( int j = 0; j < Rank.Count-1-i; j++)
            {
                if (Rank[j]<Rank[j+i])
                {
                    //排列存值
                    int temp = Rank[j];
                    Rank[j] = Rank[j+1];
                    Rank[j + 1] = temp;
                }
            }
        }
        //通过遍历显示出来
        for ( int i = 0; i < Rank.Count; i++)
        {
            //实例化
            GameObject go = Instantiate(RankUI);
            //设置父物体
            go.transform.SetParent(ParentObj);
            //自身缩放
            go.transform.localScale = Vector3 .one;
           
      //可以直接显示
      // go.transform.GetComponent<UILabel>().text =Rank[i].ToString() ;

              //可以取前五名
            if (i<5)
            {
                go.transform.GetComponent< UILabel >().text = "第" + (i + 1) + "名:" + Rank[i].ToString() + "战斗力!" ;
            }
            else
            {
                go.transform.GetComponent< UILabel >().text = "" + Rank[i].ToString() + "战斗力!" ;
            }
        }
       }
       
      
}
注意最重要的一点如果排列不执行,就需要重新调用
    void UpDate(){
      if(Input.GetKeyDown(KeyCode.A)){
      ParentObj.GetComPonent<UIGrid>().Reposition;
    Debug.Log("AAAAAAAA");
           
   }
这里用了不太正规的命名,自己整理的所以见谅


   }

做记录用,不喜勿喷!!!谢谢

NGUILabel组件是一种用于显示文本的UI组件。它支持NGUI插件自带的几种字体和Unity本身的字体。可以将TTF格式的字体文件放置到Unity的Assets目录中进行使用。此外,还可以使用Atlas Maker创建动态字体和静态字体,将文字转换为图片,以提高运行效率。\[2\] Label组件的基本原理是使用两种字体方案:Unity的动态字体(TrueTypeFont,TTF)和NGUI的BitmapFont(BMFont)。UILabel组件维护一个名为mShouldBeProcessed的布尔变量,当设置基本属性时,会将mShouldBeProcessed设置为true,并在父类UIWidget的属性和方法中判断shouldBeProcessed是否为true。如果为true,则调用UILabel的ProcessText方法重新计算信息并重新绘制。NGUIText作为辅助类,是一个静态类,用于缓存绘制文字的参数和相应的计算方法,以减少内存占用。\[3\] 总结来说,NGUILabel组件是一种用于显示文本的UI组件,支持多种字体和字体方案,可以通过设置属性和调用方法来重新计算和绘制文本。 #### 引用[.reference_title] - *1* *2* [UnityNGUI插件之Label](https://blog.youkuaiyun.com/qq_41299069/article/details/90677391)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [NGUI-UILabel](https://blog.youkuaiyun.com/qq_63483516/article/details/125409019)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Batman1208

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值