Я делаю простой просмотрщик изображений с java
, используя javafx
после открытия около 10 фото, это занимает много оперативной памяти!как закрыть открытое изображение, Java/JavaFX
, очевидно, мне нужно, чтобы правильно закрыть открытые фотографии (которые не видны прямо сейчас!) (В моем случае тест/использование, фото огромны !!)
это только кусок кода .. .
, но это все, что нужно знать
private HashMap<Image, String> adrs; // a hashMap from thumbNail to address of the image
ObservableList<ImageView> list; // list of thumbNails
@FXML public ListView<ImageView> pics;
@FXML public ImageView preview;
public void init(String[] picAdrs){
loadThumbNails(picAdrs); // initializes thumbNails (list)
pics.setItems(list);
pics.getSelectionModel().selectedItemProperty().addListener((v, oldvalue, newvalue) -> {
// --> this is where the previous value of "preview.getImage()" should be closed <--
// (and i don't know how!)
preview.setImage(new Image(adrs.get(newvalue.getImage()));
// and more (not related codes...)
}
}
private void loadThumbNails(String[] picAdrs){
// initializing list & adrs
for(String i : picAdrs){
Image img = new Image(new File(i).toURI().toString(), 200, 0, true, false);
ImageView iv = new ImageView();
iv.setImage(img);
adrs.put(img, new File(i).toURI().toString());
list.add(iv);
}
}
эскизы на левой стороне и «Предварительный просмотр» находится справа:
Just a preview of the Scene
, как кажется быть очень простым! ... простой способ был бы оценен!
кстати ... код работает, это только о той части, которую я комментировал
я уменьшил около 50% использования оперативной памяти с помощью сборщика мусора, но я все еще хочу лучший способ, как я знаю, system.gc
не является надежным
здесь является журналом для открытия 30 миниатюр и один полного качества ПОС:
Попробуйте проверить это http://stackoverflow.com/questions/26325996/safely-close-remove-file-for-imageview- in-javafx –
Пожалуйста, разместите код, отвечающий за загрузку изображений, и расскажите, как пользователь меняет места между разными фотографиями. – fabian
@ Collins.A это сообщение об удалении ... уже прочитал его ... tnx anyway – SASA1024