У меня есть ObservableList<ImageView>
, который я хочу обновлять каждый раз, когда приступаю к действию. По умолчанию, я поставил три изображения в списке массива и это, как я удалить последний после некоторого действия:ObservableList не работает, я ожидал
list.remove(list.size()-1;
После удаления элемента, я называю это метод, который рисует этот список; но когда осталось только одно изображение, оно не исчезает. Я уже пытался вернуть пустой Node
, если список пуст, но ничего не изменил. Также выяснилось, что список действительно пуст в отладчике. Любая идея почему?
EDIT:
ObservableList<ImageView> ammoList;
HBox ammoHBox;
...
private HBox addAmmo(){
ammoHBox = new HBox();
if(ammoList.isEmpty()) return hbox; //dont work
ammoHBox.getChildren().addAll(naboje);
ammoHBox.setSpacing(10);
return ammoHBox;
}
Это я называю каждый раз, когда ammoList изменилось.
Если вы подтвердили отладчиком, что список действительно пуст, проблема почти наверняка находится в той части, где вы рисуете содержимое списка. Пожалуйста, включите эту часть вместе с любыми другими соответствующими частями вашего кода. – Itai
Что такое 'hbox' (значение, которое вы возвращаете)? Он не определен в фрагменте кода. Вы хотели вернуть 'ammoHBox'? – Itai
Что такое 'naboje' и как используется ваш метод? Кроме того, если вы уже храните 'HBox' в сценарии' HBox' в качестве поля, почему бы вам не изменить существующий, а не воссоздать его? – fabian