什么是"虚拟控件"?(在JavaFX文档中提到).

 晴兮心语6 发布于 2023-02-05 11:05

来自http://docs.oracle.com/javafx/2/api/javafx/scene/control/Cell.html:

"Cell API用于ListView,TreeView和TableView等虚拟化控件.Cell是Labeled控件,用于在ListView,TreeView或TableView中呈现单个"行".

他们为什么要虚拟化?

1 个回答
  • 如果要在Control诸如a中显示大量数据ListView,则需要某种方式来虚拟化Nodes创建和使用的数据.否则会影响内存占用,从而影响时间.

    例如,如果您有1000万个数据项,则不希望创建1000万个节点.因此,您可以创建足够的节点以动态填充显示,并在用户滚动ListView控件时重复使用它们.

    来自文档:

    由于TreeView,ListView,TableView和其他此类控件可能会用于显示难以置信的大量数据,因此无法为控件中的每个项创建实际的Cell.我们仅使用非常少的Cell来表示极大的数据集.每个Cell都被"回收"或重复使用.当我们说这些控件是虚拟化时,这就是我们的意思.

    PS:每个框架都有这种虚拟化,无论是Android,WPF,JavaFX等.

    来自JavaFX的一位开发人员:http: //fxexperience.com/2009/09/ui-virtualization/

    2023-02-05 11:07 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有