我制作了一个ImageView
数组:
public static ImageView[] array = new ImageView[2];
然后设置ImageView
:
ImageView img = new ImageView(new Image("sample.png"));
array [0] = img;
array [1] = img;
然后将其添加到屏幕:
root.getChildren().add(array [0]);
root.getChildren().add(array [1]);
错误:
Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: Children: duplicate children added: parent = BorderPane@78e30575
那么,我的错误在哪里?
错误信息说明了一切。您不能添加相同的子对象两次,并且在代码片段中array[0]
和array[1]
都指向同一个对象。但是,您可以添加两个使用相同图像的对象:
array[0] = new ImageView(new Image("sample.png"));
array[1] = new ImageView(new Image("sample.png"));