Files
2026-02-21 16:45:37 +08:00

84 lines
1.2 KiB
C#

using System.Linq;
using UIWidgets;
using UnityEngine;
namespace UIWidgetsSamples
{
public class TestListViewPerformance : MonoBehaviour
{
[SerializeField]
private ListView lv;
[SerializeField]
private ListViewIcons lvi;
private void TestN(int n)
{
lv.DataSource = (from x in Enumerable.Range(1, n)
select x.ToString("00000")).ToObservableList();
}
public void Test2()
{
TestN(2);
}
public void Test5()
{
TestN(5);
}
public void Test10()
{
TestN(10);
}
public void Test100()
{
TestN(100);
}
public void Test1000()
{
TestN(1000);
}
public void Test10000()
{
TestN(10000);
}
public void TestiN(int n)
{
ObservableList<ListViewIconsItemDescription> dataSource = (from x in Enumerable.Range(1, n)
select new ListViewIconsItemDescription
{
Name = x.ToString("00000")
}).ToObservableList();
lvi.DataSource = dataSource;
}
public void Testi2()
{
TestiN(2);
}
public void Testi5()
{
TestiN(5);
}
public void Testi1000()
{
lvi.SortFunc = null;
TestiN(1000);
}
public void Testi10000()
{
lvi.SortFunc = null;
TestiN(10000);
}
}
}