简单的实现
一行数据创建一行显示。这种方法实现起来比较简单,数据与界面行一一对应,数据操作,表格滚动也非常方便,所以,大多数界面控件都采用这种实现方式。
但是,在大数据量的时候这种方式就显得非常的低效,因为创建了大量在显示区域外的行。要知道,创建、显示界面元素是非常耗计算资源的。
高效的实现
知道了上述方式的不足后,就能设计优化的方案了。因为界面元素是影响性能的大户,所以,改良后的方式是,只创建表格区域能够显示的行数,例如:目前表格区域只能显示10行就只创建10行,当表格大小改变能显示15行时就创建到15行。
然后设置一个数据范围,只显示当前位置的数据段。这样节省了大量的界面元素的创建,但是也加大了编程的难度,要控制数据的滚动,显示的刷新,显示索引与数据索引不匹配等等。
粗略测试
显示5万行(不算创建5万行数据的时间)。
简单的方式:机器卡死直到崩溃。
高效的方式:用了0.5秒。