【发布时间】:2019-08-03 11:40:37
【问题描述】:
有许多通过FXCollections 从 FXML 创建集合的示例(来自 here):
<FXCollections fx:factory="observableArrayList">
<String fx:value="A"/>
<String fx:value="B"/>
<String fx:value="C"/>
</FXCollections>
但我无法理解它是如何工作的。毕竟工厂方法是no-arg方法,那么String-elements去哪里了呢?我以为它是默认属性,但FXCollections 没有默认属性。 observableArrayList() 工厂方法的重载版本在文档和源代码中采用集合元素的可变参数。但是FXML为什么要用这种方法呢?它没有在文档中指定(或者我找不到它)。我在文档中找到的所有内容是:
fx:factory 属性是创建其类没有默认构造函数的对象的另一种方法。该属性的值是用于生成类实例的静态、无参数工厂方法的名称。例如,以下标记创建了一个可观察数组列表的实例,其中填充了三个字符串值:
我觉得这是个愚蠢的问题。但是谁能帮我说清楚?
提前谢谢你
附:对不起我的英语
【问题讨论】: