最新版NGUI3.8.1之UIGrid的重写排序方法,

            在实际项目中使用UIGrid来排序是非常方便的,但它原有的几个排序不能满足我们的需要, 仔细查看源码,作者已经为我们留下了接口


下面 将要代码实现按照我们自定义的排序方式进行排序,已item 上挂的脚本上面的ID(int)变量来排序,



新建一个UI_MyGrid脚本挂在UIGrid上

最新版NGUI3.8.1之UIGrid的重写排序方法,_第1张图片

using UnityEngine;
using System.Collections;

public class UI_MyGrid :UIGrid {

	// Use this for initialization
	void Start () {
	
	}
	protected override void Sort (System.Collections.Generic.List list)
	{
		if (sorting == Sorting.Custom)
		list.Sort (this.SortByLevelID);
	}
	int SortByLevelID(Transform a,Transform b)
	{
		return a.GetComponent().ID.CompareTo(b.GetComponent().ID);
	}

	// Update is called once per frame
	 void Update() {
		if(Input.GetKeyDown(KeyCode.A))
			this.Reposition();

	}
}


你可能感兴趣的:(NGUI)